home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / rbbs_pc / ugly174.zip / R-PCUGLY.MRG < prev    next >
Text File  |  1992-07-05  |  91KB  |  2,270 lines

  1. * ------------[ BLED merge (c) Ken Goosens ]-------------
  2. * Merge this against RELEASE\RBBS-PC.BAS to produce RBBS-PC.BAS
  3. * RELEASE\RBBS-PC.BAS:  Date 6-20-1992  Size 147219 bytes
  4. * ------------[ Created 07-04-1992 19:42:56 ]------------
  5. * REPLACING old line(s) by new
  6. * ------[ first line different ]------
  7. 400 ' CALL SkipLine(1)                                               ' UG070501
  8.     ZEscapeInsecure = ZFalse
  9.     ZUpperCase = ZFalse
  10.     CALL SetExpert
  11.     WasA1$ = "What is your "
  12.     CALL FlushCom (ZWasDF$)
  13.     GOSUB 12500
  14.     CALL CommInfo
  15.     IF ZFF THEN _
  16.        ZLogonErrorIndex = 1 : _
  17.        GOTO 10620
  18.     IF ZMinOldCallerBaud > ZBaudTest! THEN _
  19.        CALL QuickTPut1 ("Sorry, But" + STR$(ZBaudTest!) + " BPS Isn't Allowed Here.") : _
  20.        ZWasLG$(7) = "OLD CALLER BAUD RESTRICTION" : _
  21.        ZLogonErrorIndex = 7 : _
  22.        GOTO 10620
  23.     LogIndex = 4 - (ZLenIndiv > 0 AND ZStartIndiv > 0)
  24.     TurboLogon = (LEFT$(ZUserIn$(LogIndex),1) = "!")
  25.     SkipWelcomeScreen = (LEFT$(ZUserIn$(LogIndex),1) = "$")
  26.     ZHomeConf$ = RIGHT$(ZUserIn$(LogIndex),LEN(ZUserIn$(LogIndex)) _
  27.                      + (TurboLogon OR SkipWelcomeScreen))
  28.     CALL AllCaps(ZHomeConf$)
  29. '
  30. ' *****  CHECK IF SAME USER ON ANOTHER NODE   ***
  31. '
  32. * INSERTING new line(s)
  33. 413 ZOutTxt$ = ZFirstName$                                           ' UG070501
  34. 414 CALL NameCaps(ZOutTxt$)                                          ' UG070501
  35.     RETURN                                                           ' UG070501
  36. * REPLACING old line(s) by new
  37. 420 IF MID$(ZMsgRec$,57,1) = "A" THEN _
  38.        ZLogonErrorIndex = 6 : _
  39.        ZWasLG$(6) = ZWasLG$(6) + _
  40.                 LEFT$(ZMsgRec$,25) : _
  41. * ------[ first line different ]------
  42.        ZOutTxt$ = ZActiveUserName$ + " is Logged Onto Another Node!" :_ ' UG070501
  43.        CALL RingCaller : _
  44.        GOTO 10620
  45.     ZFirstName$ = LEFT$(ZMsgRec$,INSTR(ZMsgRec$, " ") - 1)
  46.     IF NOT ZPrivateDoor THEN _
  47.        CALL SkipLine (1) : _
  48.        GOSUB 413 : _                                                 ' UG070501
  49.        CALL QuickTPut1 (ZOutTxt$ + ", Welcome Back to the BBS.") : _ ' UG070501
  50.        CALL Talk (11,ZOutTxt$)
  51.     IF ZExitToDoors THEN _
  52.        GOTO 457
  53. '
  54. ' *****  TEST FOR REMOTE SYSOP LOGGING ON   ***
  55. '
  56. * REPLACING old line(s) by new
  57. * ------[ first line different ]------
  58. 457 ' CALL SkipLine (1)                                              ' UG070501
  59.     GOSUB 12840
  60.     GOSUB 12850
  61.     GOSUB 12598
  62.     CALL RegToCurrent
  63.     CALL CompDate (ZTodayRegYY,ZTodayRegMM,ZTodayRegDD,TodayComputeDate!)
  64.     IF NOT Found THEN _
  65.        GOTO 700
  66.     GOSUB 12984
  67. '
  68. ' *****  ACTIVE USER FOUND  ****
  69. '
  70. * REPLACING old line(s) by new
  71. 462 IF ZRestrictByDate AND ZDaysInRegPeriod > 0 THEN _
  72.        CALL CompDate (ZUserRegYY,ZUserRegMM,ZUserRegDD,UserComputeDate!) : _
  73.        ZRegDaysRemaining = UserComputeDate! + _
  74.                             ZDaysInRegPeriod - _
  75.                             TodayComputeDate! : _
  76.        CALL ExpireDate (UserComputeDate!,ZDaysInRegPeriod,ZExpirationDate$) _
  77.     ELSE ZDaysInRegPeriod = 0
  78.     IF NOT ZPrivateDoor THEN _
  79.        IF ZRegDaysRemaining < 0 AND ZDaysInRegPeriod > 0 THEN _
  80.        IF ZUserSecLevel > ZTempExpiredSec THEN _
  81. * ------[ first line different ]------
  82.           CALL QuickTPut (ZWasLG$(9) + _
  83.                       " - Security Level Set to" + _
  84.                       STR$(ZExpiredSec) + ".",2) : _                 ' UG070501
  85.           CALL BufFile(ZHelpPath$+"RGXPIRD"+ZHelpExtension$,WasX) : _
  86.           ZLogonErrorIndex = 9 : _
  87.           ZUserSecLevel = ZTempExpiredSec : _
  88.           LSET ZSecLevel$ = MKI$(ZUserSecLevel) : _
  89.           GOSUB 5135
  90.     RETURN
  91. '
  92. ' ***  DISPLAY LOG-ON MESSAGE FOR SPECIFIC SECURITY LEVEL  **
  93. '
  94. * REPLACING old line(s) by new
  95. 643 IF NOT LogonPswdFailed THEN _
  96.        GOSUB 41070 : _
  97.        GOTO 644 _
  98.     ELSE IF ZExitToDoors THEN _
  99.             GOTO 644
  100.     GOSUB 12991
  101. * ------[ first line different ]------
  102.     ZOutTxt$ = "Forget Your Password?  Leave a Message to the SysOp (Y,[N])" ' UG070501
  103.     GOSUB 12999
  104.     IF ZYes THEN _
  105.        OrigSubject$ = "FORGOTTEN PASSWORD" : _
  106.        GOSUB 1801
  107.     ZFirstName$ = ""
  108.     GOTO 902
  109. * REPLACING old line(s) by new
  110. 700 ZExpertUser = ZFalse
  111.     CALL SetExpert
  112.     IF ZMinNewCallerBaud > ZBaudTest! THEN _
  113. * ------[ first line different ]------
  114.        CALL QuickTPut ("Sorry, But" + STR$(ZBaudTest!) + " BPS is Only Available to Registered Users.",1) : _ ' UG070501
  115.        ZWasLG$(7) = "NEW CALLER BAUD RESTRICTION" : _
  116.        ZLogonErrorIndex = 7 : _
  117.        GOTO 10620
  118.     CALL SkipLine (1)                                                ' UG070501
  119.     CALL QuickTPut1 (ZActiveUserName$ + " Isn't in the Users File.") ' UG070501
  120.     ZLastIndex = 0
  121.     GOSUB 12558
  122.     IF ZNo THEN _
  123.        GOSUB 13700 : _
  124.        GOTO 400
  125. '   CALL SkipLine (1)                                                ' UG070501
  126.     CALL Line25
  127.     ZWasZ$ = ZFirstName$
  128.     GOSUB 670
  129.     ZWasZ$ = ZLastName$
  130.     GOSUB 670
  131.     ZWasZ$ = ZActiveUserName$
  132.     GOSUB 670
  133.     TurboLogon = ZFalse
  134. * REPLACING old line(s) by new
  135. 725 IF ZUserSecLevel < ZMinLogonSec THEN _
  136.        ZLogonErrorIndex = 1 : _
  137.        GOTO 460
  138.     IF ZFirstName$ = ZLastName$ THEN _
  139. * ------[ first line different ]------
  140.        CALL QuickTPut1 ("Logon Error: " + ZFirstNamePrompt$+"/"+ZLastNamePrompt$+" Can't Be the Same.") : _ ' UG070501
  141.        ZLogonErrorIndex = 3 : _
  142.        GOTO 10620
  143.     IF NOT ZRememberNewUsers THEN _
  144.        GOSUB 13700 : _
  145.        ZUserFileIndex = 0 : _
  146.        GOSUB 12960: _
  147.        PrevLastOn$ = "00-00-00": _
  148.        GOTO 735
  149.     ZNewUser = ZTrue
  150.     CALL OpenUser (ZHighestUserRecord)
  151.     GOSUB 9450
  152.     GOSUB 12630
  153.     MID$(ZUserRecord$,ZStartHash,ZLenHash) = LEFT$("NEWUSER",ZLenHash)
  154.     IF ZStartIndiv > 0 THEN _
  155.        MID$(ZUserRecord$,ZStartIndiv,ZLenIndiv) = ZIndivValue$
  156.     GOSUB 9440
  157. * REPLACING old line(s) by new
  158. 739 CALL QuickTPut1 ("User Logged As: " + ZActiveUserName$ + " from " + ZWasCI$) ' UG070501
  159. * REPLACING old line(s) by new
  160. * ------[ first line different ]------
  161. 740 ZOutTxt$ = "C)hange "+ZFirstNamePrompt$+"/"+ZLastNamePrompt$+"/"+ZUserLocation$+", D)isconnect, [R]egister" ' UG070501
  162.     GOSUB 12995
  163.     IF ZWasQ = 0 THEN _
  164.        ZWasZ$ = "R" _
  165.     ELSE CALL AraAllCaps (ZUserIn$(),1) : _
  166.          ZWasZ$ = ZUserIn$(1)
  167.     ZWasS = INSTR("CDR",ZWasZ$)
  168. * REPLACING old line(s) by new
  169. * ------[ first line different ]------
  170. 754 CALL QuickTPut1 ("You Have Guest Privileges.  You'll Have to Re-Register On the Next Call.") ' UG070501
  171.     ZUserSecSave = ZUserSecLevel
  172.     GOTO 832
  173. * REPLACING old line(s) by new
  174. 755 IF ZPrivateDoor THEN _
  175.        ZUserIn$ = ZPswd$ : _
  176.        ZWasZ$ = ZUserIn$ : _
  177.        RETURN
  178.     GOSUB 12800
  179. * ------[ first line different ]------
  180.     ZOutTxt$ = "Re-Enter Your Password"                              ' UG070501
  181.     GOSUB 45010
  182.     SWAP ZWasZ$,ZUserIn$
  183.     CALL AllCaps (ZWasZ$)
  184.     IF ZUserIn$ <> ZWasZ$ THEN _
  185.        CALL QuickTPut2 ("Passwords Don't Match.") : _                ' UG070501
  186.        GOTO 755
  187.     RETURN
  188. * REPLACING old line(s) by new
  189. 758 CALL AskMore ("",ZTrue,ZTrue,WasX,ZTrue)
  190.     CALL Line25
  191.     ZFileName$ = ZNewUserFile$
  192.     ZStopInterrupts = ZTrue
  193.     GOSUB 1790
  194. * ------[ first line different ]------
  195. '   CALL SkipLine(1)                                                 ' UG070501
  196.     RETURN
  197. '
  198. ' ***  R - COMMAND FROM NEWUSER ROUTINE - REGISTER   **
  199. '
  200. * REPLACING old line(s) by new
  201. 760 ZLastIndex = 0
  202.     GOSUB 755
  203.     CALL AllCaps (ZWasZ$)
  204.     LSET ZPswd$ = ZWasZ$
  205. * ------[ first line different ]------
  206. '   CALL QuickTPut1 ("Please REMEMBER your password")                ' UG070501
  207.     ZUserTextColor = 37
  208.     ZTempSecLevel = ZUserSecLevel
  209.     CALL Protocol
  210.     ZUserXferDefault$ = "N"
  211.     ZProtoPrompt$ = "None"
  212.     LSET ZListNewDate$ = CHR$(91) + CHR$(1) + CHR$(1)                ' UG070502
  213.     IF ZNewUserSetsDefaults THEN _
  214.        CALL SkipLine (1) : _                                         ' UG070501
  215.        ZBypassTimeCheck = ZTrue : _
  216.        GOSUB 43000 : _
  217.        CALL SkipLine (1) : _                                         ' UG070501
  218.        ZBypassTimeCheck = ZFalse : _
  219.        CALL Graphic (ZFileName$) : _
  220.        GOSUB 42805 : _
  221.        GOSUB 42700 : _                                               ' UG070501
  222.        CALL SkipLine (1) : _                                         ' UG070501
  223.     ELSE ZUpperCase = ZFalse : _
  224.          ZNulls = ZFalse
  225.     ZPageLength = ZPageLengthDef
  226.     CALL SetNewUserDef
  227.     GOSUB 5135
  228.     CALL DefaultU
  229. * REPLACING old line(s) by new
  230. 800 IF ZAdjustedSecurity THEN _
  231.        GOSUB 5135
  232.     IF ZOrigCnfg$ = ZCurDef$ THEN _
  233.        ZMainUserFileIndex = ZUserFileIndex : _
  234.        ZOrigSec = ZUserSecLevel : _
  235.        ZUserSecSave = ZUserSecLevel : _
  236.        ZOrigUserName$ = ZActiveUserName$
  237.     ZTimesLoggedOn = CVI(MID$(ZUserOption$,1,2)) - _
  238.        ((ZOrigCnfg$ <> ZCurDef$ OR NOT ZSubBoard) AND _
  239.         (NOT ZPrivateDoor) AND (NOT ZExitToDoors))
  240.     GOSUB 9500
  241.     IF (NOT ZExitToDoors) AND (NOT ZSubBoard) THEN _
  242.        CALL UpdtCalr (ZActiveUserName$ + " from " + ZWasCI$ + _
  243.                  " Lvl" + STR$(ZUserSecLevel) + " " + TIME$,2)
  244.     PrevLastOn$ = ZLastDateTimeOn$
  245.     IF ZLocalUser THEN _
  246.        ZTalkToModemAt$ = "9600" : _
  247.        ZBaudParity$ = "9600 BPS,N,8,1" : _
  248.        ZModemInitBaud$ = "9600" : _
  249.        ZSnoop = ZTrue : _
  250.        ZLineFeeds = ZTrue
  251.     CALL SetCrLf
  252.     CALL SetPrompt
  253.     CALL XferType (2,ZTrue)
  254.     IF NOT ZSubBoard THEN _
  255.        BoardCheckDate$ = PrevLastOn$
  256.     CALL SetSysOp
  257.     IF ZWasA THEN _
  258.        ZActiveUserName$ = "SYSOP" : _
  259.        ZFirstName$ = "SysOp"
  260.     IF ZExitToDoors OR ZSubBoard THEN _
  261.        GOTO 815
  262.     GOSUB 465
  263.     IF (ZEightBit AND _
  264.        ZAutoDownDesired) OR _
  265.        ZAskID THEN _
  266.        CALL TestUser
  267.     CALL QuickTPut1 ("Logging " + ZActiveUserName$)
  268.     CALL Talk (1,ZOutTxt$)
  269.     Temp$ = STR$(ZBaudTest!) + MID$(ZBaudParity$,INSTR(ZBaudParity$," B"))
  270.     CALL QuickTPut1 ("RBBS-PC " + ZVersionID$ + " Node " + ZNodeID$ + _
  271. * ------[ first line different ]------
  272.                      ", Running at" + Temp$)                         ' UG070501
  273.     CALL SkipLine (1)
  274.     Attempts = 0
  275.     ZWasZ$ = ZActiveUserName$ + _
  276.             " on at " + _
  277.             ZCurDate$ + _
  278.             ", " + _
  279.             ZTime$ + _
  280.             " from " + _
  281.             ZWasCI$ + _
  282.             "," + Temp$
  283.      ZWasNG$ = ZWasZ$ + SPACE$(128 - LEN(ZWasZ$))
  284. '
  285. ' *  ALWAYS RECORD THE HASH/INDIVIDUATING FIELD TO EACH RECORD LOGGED OUT
  286. '
  287.      WasX$ = "{" + _
  288.           HashValue$ + _
  289.           "/" + _
  290.           ZIndivValue$ + _
  291.           "}"
  292.      IF LEN(ZWasZ$) < 65 THEN _
  293.         WasX = 65 _
  294.      ELSE WasX = LEN(ZWasZ$) + 2
  295.      MID$(ZWasNG$,WasX) = WasX$
  296.      CALL Printit ("  " + ZWasZ$)
  297.      IF ZNewUser THEN _
  298.         CALL UpdtCalr ("NEWUSER",1) : _
  299.         CALL Muzak (2)
  300. '
  301. ' *****  NOTIFY CALLER IF ABLE TO "AUTODOWN"  ****
  302. '
  303. '   IF ZEightBit AND ZAutoDownYes THEN _                             ' UG070501
  304. '      ZOutTxt$ = CHR$(9) + _                                        ' UG070501
  305. '           ZReturnLineFeed$ + _                                     ' UG070501
  306. '           "You may use AUTODOWNLOADing!" : _                       ' UG070501
  307. '      CALL RingCaller : _                                           ' UG070501
  308. '      CALL DelayTime(4)                                             ' UG070501
  309. * REPLACING old line(s) by new
  310. 816 IF NOT ZNewUser THEN _
  311. * ------[ first line different ]------
  312.        CALL QuickTPut1 ("Times On:" + STR$(ZTimesLoggedOn) + _
  313.                         "  Last On: " + PrevLastOn$)                 ' UG070501
  314. * REPLACING old line(s) by new
  315. * ------[ first line different ]------
  316. 817 IF NOT ZRemindFileXfers OR ZNewUser THEN _                       ' UG070501
  317.        CALL SkipLine (1) : _                                         ' UG070501
  318.        GOTO 818
  319.     ZOutTxt$ = "Files Downloaded:" + _
  320.          STR$(ZDnlds) + _
  321.          "  Uploaded:" + _
  322.          STR$(ZUplds)
  323.     GOSUB 12979                                                      ' UG070501
  324.     CALL CheckRatio (ZFalse)
  325.     CALL SkipLine (1)                                                ' UG070501
  326. * REPLACING old line(s) by new
  327. 832 IF ZRestrictByDate AND ZDaysInRegPeriod > 0 THEN _
  328.        IF ZRegDaysRemaining <= ZDaysToWarn AND _
  329.           ZRegDaysRemaining > 0 AND ZUserSecLevel > ZTempExpiredSec THEN _
  330. * ------[ first line different ]------
  331.              CALL QuickTPut2 ("Warning: Your Registration Expires in" + _
  332.                        STR$(ZRegDaysRemaining) + " Days.") : _       ' UG070501
  333.              CALL BufFile(ZHelpPath$+"RGXPIRE"+ZHelpExtension$,WasX) : _
  334.              IF NOT ZOK THEN CALL DelayTime (5)
  335.     IF (NOT ZReqQuesAnswered) AND _
  336.        ZReqQues$ <> "" THEN _
  337.          ZFileName$ = ZReqQues$ : _
  338.          GOSUB 11520 : _
  339.          IF ZOK THEN _
  340.             ZReqQuesAnswered = ZTrue
  341. * REPLACING old line(s) by new
  342. 850 ZSubParm = 2
  343.     CALL Line25
  344. * ------[ first line different ]------
  345. '   CALL SkipLine (1)                                                ' UG070501
  346.     IF TurboLogon THEN _
  347.        ZBulletinSave$ = ZBulletinMenu$ : _
  348.        GOSUB 9750 : _
  349.        CALL SkipLine (1) : _                                         ' UG070501
  350.        GOTO 900
  351.     CALL CountNewFiles (BoardCheckDate$,ZMsgPtr(),LastNew,ZOutTxt$)
  352.     IF ZFMSDirectory$ <> "" THEN _
  353.        CALL QuickTPut2 ("There Are" + ZOutTxt$ + " New Files.") _    ' UG070501
  354.     ELSE GOTO 852
  355.     IF ZNewUser OR LastNew < 1 OR NOT ZNewFilesCheck THEN _
  356.        GOTO 852
  357.     WasL = LEN(ZDnldDrives$)
  358.     SecNum = 19
  359.     IF (NOT ZSkipFilesLogon) AND _
  360.        ZUserSecLevel >= ZOptSec(SecNum) THEN _
  361.           ZOutTxt$ = "List the New Files ([Y],N)" : _                ' UG070501
  362.           GOSUB 12999 : _
  363.           IF NOT ZNo THEN _
  364.              ZLastIndex = 3 : _
  365.              ZAnsIndex = 1 : _
  366.              ZWasQ = 3 : _
  367.              ZUserIn$(2) = MID$(BoardCheckDate$,1,2) + _
  368.                      MID$(BoardCheckDate$,4,2) + _
  369.                      MID$(BoardCheckDate$,7,2) : _
  370.              ZWasY$ = ZUserIn$(3) : _
  371.              CALL BreakFileName (ZFMSDirectory$,DR$,ZWasY$,WasX$,ZFalse) : _
  372.              ZUserIn$(3) = ZWasY$ : _
  373.              TimeLockExempt = ZTrue : _
  374.              GOSUB 20185 : _
  375.              ZLastIndex = 0 : _
  376.              TimeLockExempt = ZFalse
  377. * REPLACING old line(s) by new
  378. 856 IF NOT ZCheckBulletLogon THEN _
  379.        ZAnsIndex = 0 : _
  380. * ------[ first line different ]------
  381.        ReturnToPrompt = ZTrue : _                                    ' UG070501
  382.        GOSUB 9760 : _
  383.        GOTO 900
  384. '   CALL SkipLine (1)                                                ' UG070501
  385.     ZOutTxt$ = "Skip the Bulletins (Y,[N])"                          ' UG070501
  386.     GOSUB 12999
  387.     IF ZYes THEN _
  388.        GOTO 900
  389. * REPLACING old line(s) by new
  390. 1209 ' CALL SkipLine (1)                                             ' UG070501
  391. * REPLACING old line(s) by new
  392. 1235 ZWasZ$ = ZUserIn$(ZAnsIndex)
  393.      IF ZWasZ$ = SPACE$(LEN(ZWasZ$)) THEN _
  394.         GOTO 1230
  395.      CALL SearchCmd (ZSubSection,ZFF)
  396.      IF ZFF > 0 THEN _
  397.         GOTO 1239
  398.      IF ZWasQ > 0 THEN _
  399. * ------[ first line different ]------
  400.         CALL QuickTPut2 ("Sorry, Unknown Command: " + ZWasZ$)        ' UG070501
  401.      CALL FlushKeys
  402.      GOTO 1230
  403. * REPLACING old line(s) by new
  404. 1243 ZFileName$ = ZNewsFileName$
  405.      CALL RBBSFind (ZFileName$,WasZ,WasY,ZMsgPtr,WasD)
  406.      IF WasZ <> 0 THEN _
  407.         RETURN
  408.      FDate# = WasD + (100 * ZMsgPtr) + (10000# * (WasY + 1980))
  409.      IF NewsDate# > FDate# THEN _
  410.         RETURN
  411.      IF TurboLogon THEN _
  412. * ------[ first line different ]------
  413.         CALL QuickTPut1 ("News File Updated Since Your Last Call.") : _' UG070501
  414.         RETURN
  415.      ZStopInterrupts = ZFalse
  416.      GOSUB 1790
  417.      WasZ = 0
  418.      RETURN                                                          ' LP01NEWS
  419. '
  420. ' ****           QUIT COMMAND (GLOBAL)              ***
  421. '
  422. * REPLACING old line(s) by new
  423. * ------[ first line different ]------
  424. 1300 CALL QuickTPut1 (ZConfName$ + " Message Base")                  ' UG070501
  425.      RETURN
  426. '
  427. ' **** COMMON LOCAL DISPLAY PRINT  ***
  428. '
  429. * REPLACING old line(s) by new
  430. * ------[ first line different ]------
  431. 1397 GOTO 12977                                                      ' UG070501
  432. '
  433. ' ***  A - answer questionnaire
  434. '
  435. * REPLACING old line(s) by new
  436. 1400 WasA1$ = ZAnsMenu$
  437.      CALL Talk (13,ZOutTxt$)
  438. * ------[ first line different ]------
  439.      ReturnToPrompt = (ZAnsIndex < ZLastIndex)                       ' UG070501
  440. * REPLACING old line(s) by new
  441. * ------[ first line different ]------
  442. 1401 ZStackC = ZTrue                                                 ' UG070501
  443.      CALL SubMenu ("Which Questionnaires, L)ist" + ZPressEnterExpert$, _ ' UG070501
  444.         WasA1$,ZQuesPath$,".DEF","",ZTrue,ZFalse,ZTrue,"",WasX,ZTrue)
  445.      IF ZWasQ = 0 THEN _
  446.         RETURN
  447.      IF ZSubParm = -1 THEN _
  448.         RETURN 10595
  449.      QuestHold$ = ZWasZ$
  450.      GOSUB 11520
  451.      CLOSE 2
  452.      CALL UpdtCalr (QuestHold$ + " questionnaire " + _
  453.         MID$("answeredaborted",1 - 8 * ZQuestAborted,8),2)
  454.      CALL SkipLine (1)                                               ' UG070501
  455.      IF ReturnToPrompt THEN _
  456.         RETURN
  457.      GOTO 1401
  458. '
  459. ' *****    Toggle COMMAND (UTILITIES)     ****
  460. '
  461. * REPLACING old line(s) by new
  462. 1760 ZFileName$ = ZPreLog$
  463.      GOSUB 1790
  464.      ZFileName$ = ZWelcomeFile$
  465. * ------[ first line different ]------
  466.      GOSUB 1789                                                      ' UG070501
  467.      RETURN                                                          ' UG070501
  468. * INSERTING new line(s)
  469. 1789 CALL SkipLine (1)                                               ' UG070501
  470. * REPLACING old line(s) by new
  471. 1801 MsgTo$ = "SYSOP"
  472.      Subject$ = OrigSubject$
  473.      MsgFrom$ = ZActiveUserName$
  474.      GOSUB 1893
  475.      IF (ActiveMessages >= MaxMsgs OR _
  476.         ((NOT ZMsgsCanGrow) AND _
  477.         (ZNextMsgRec + 5 + ZMaxNodes > HighestMsgRecord)) OR _
  478.         NOT ZCmntsAsMsgs ) THEN _
  479.         ZOutTxt$ = "Want a Reply?  Use "+MID$(ZAllOpts$,5,1) + _
  480. * ------[ first line different ]------
  481.                    " Instead.  Really Leave a Comment (Y,[N])" : _   ' UG070501
  482.         GOSUB 12999 : _                                              ' UG070501
  483.         IF NOT ZYes THEN _                                           ' UG070501
  484.            RETURN _
  485.         ELSE ZSysopComment = ZTrue : _
  486.              GOTO 2007
  487.      ZSysopComment = ZFalse
  488.      ZSysopMsg = ZTrue
  489.      ZMsgHeader$ = "Comment"                                         ' UG070501
  490.      GOTO 2010
  491. * REPLACING old line(s) by new
  492. 1850 WasBX = &H3
  493.      ZWasEN$ = ZCmntsFile$
  494.      GOSUB 12992
  495.      CALL OpenWorkA (ZCmntsFile$)
  496.      ZOutTxt$ = ZFirstName$ + _
  497. * ------[ first line different ]------
  498.           ", Thanks for Your Comments."                              ' UG070501
  499.      GOSUB 12977
  500.      CALL AMorPM
  501.      CALL PrintWorkA (ZActiveUserName$+" "+ZCurDate$+" "+ZTime$+" Node "+ZNodeID$)
  502.      FOR WasX = 1 TO ZLinesInMsg
  503.         CALL PrintWorkA (ZOutTxt$(WasX))
  504.      NEXT
  505.      CALL PrintWorkA (ZCarriageReturn$)
  506.      CLOSE 2
  507.      IF ZErrCode <> 0 THEN _
  508.         ZWasEL = 1850 : _
  509.         GOTO 13000
  510.      WasBX = &H3
  511.      ZWasEN$ = ZCmntsFile$
  512.      GOSUB 12993
  513.      CALL UpdtCalr ("Left comment",1)
  514.      REDIM ZOutTxt$(ZMsgDim)
  515.      RETURN
  516. '
  517. ' ****  P - COMMAND FROM MAIN MENU (DISPLAY PERSONAL MAIL)  ****
  518. '
  519. * REPLACING old line(s) by new
  520. 1895 IF TurboLogon THEN _
  521.         RETURN
  522. * ------[ first line different ]------
  523.      IF ActionFlag THEN _                                            ' UG070503
  524.          GOTO 1897                                                   ' UG070503
  525.      ZOutTxt$ = "Check Messages in " + ZConfName$ + " ([Y],N)"       ' UG070501
  526.      GOSUB 12999
  527.      IF ZNo THEN _
  528.         SkipMain = ZTrue : _
  529.         RETURN
  530. * REPLACING old line(s) by new
  531. * ------[ first line different ]------
  532. 1897 ZUserIn$(0) = LEFT$("New ",-4*LogonMailNew)                     ' UG070501
  533.      IF ZActiveMessageFile$ = ZPrevBase$ THEN _
  534.         ActionFlag = ZFalse : _
  535.         RETURN
  536. * INSERTING new line(s)
  537. 1899 GOSUB 1900                                                      ' UG070501
  538.      CALL SkipLine(1)                                                ' UG070501
  539.      RETURN                                                          ' UG070501
  540. * REPLACING old line(s) by new
  541. 1900 GOSUB 5344
  542.      IF ZPrivateDoor THEN _
  543.         ActionFlag = ZTrue
  544.      ZPrevBase$ = ZActiveMessageFile$
  545.      ShowActive = ZFalse
  546.      IF NOT ActionFlag THEN _
  547. * ------[ first line different ]------
  548.         CALL QuickTPut ("Checking " + ConfFileName$ + " Messages",0) : _ ' UG070501
  549.         ShowActive = ZTrue _                                         ' UG070501
  550.      ELSE CALL QuickTPut ("Loading " + ConfFileName$ + " Messages",0) ' UG070501
  551.      WasA1$ = ""
  552.      MsgCt = 0
  553.      MsgsFromUser = ZFalse
  554.      ActiveMessages = 0
  555.      MailReported = ActionFlag
  556.      FirstOld = ZTrue
  557.      GOSUB 23000
  558.      MsgRec = FirstMsgRecord
  559.      MaxMsgs = VAL(MID$(ZMsgRec$,89,7))
  560.      NumDots = 0
  561. * REPLACING old line(s) by new
  562. 1925 ZWasA = VAL(MID$(ZMsgRec$,2,4))
  563.      IF LogonMailNew THEN _
  564.         IF ZWasA <= ZLastMsgRead THEN _
  565.            GOTO 1935
  566.      IF NOT ShowActive THEN _
  567.         GOTO 1930
  568.      MailReported = ZTrue
  569.      FirstNew = (ZWasA > ZLastMsgRead)
  570.      IF FirstNew THEN _
  571.         MsgCt = 0 : _
  572.         CALL SkipLine (1) : _
  573. * ------[ first line different ]------
  574.         CALL QuickTPut1 ("New Mail for You (* = Private)") _         ' UG070501
  575.      ELSE IF FirstOld THEN _
  576.              CALL SkipLine (1) : _
  577.              CALL QuickTPut1 ("Old Mail for You (* = Private)") : _  ' UG070501
  578.              FirstOld = ZFalse
  579.      ShowActive = NOT FirstNew
  580. * REPLACING old line(s) by new
  581. 1950 IF NOT MailReported THEN _
  582. * ------[ first line different ]------
  583.         GOSUB 413 : _                                                ' UG070501
  584.         ZOutTxt$ = "Sorry, " + _
  585.              ZOutTxt$ + _
  586.              ", No " + ZUserIn$(0) + "Mail Found for You." : _       ' UG070501
  587.         GOSUB 12975                                                  ' UG070501
  588.      IF MsgsFromUser = 0 OR NOT ZMsgReminder OR ActionFlag THEN      ' UG070522
  589.         IF MailReported AND NOT ActionFlag THEN _                    ' UG070501
  590.            CALL SkipLine (1)                                         ' UG070501
  591.         GOTO 1961
  592.      END IF                                                          ' UG070501
  593. '    IF ActionFlag THEN _                                            ' UG070505
  594. '       GOTO 1961                                                    ' UG070505
  595.      ZOutTxt$ = "Mail You Left"                                      ' UG070501
  596.      GOSUB 12975                                                     ' UG070501
  597. * REPLACING old line(s) by new
  598. 1960 WasK = 1
  599.      FOR MsgCt = 1 TO MsgsFromUser
  600.         ZOutTxt$ = MID$(WasA1$,WasK,5)
  601.         WasK = WasK + 5
  602.         GOSUB 12978
  603.         IF MsgCt MOD 15 = 0 THEN _
  604.            CALL SkipLine (1) : _
  605.            CALL AskMore ("",ZTrue,ZTrue,WasX,ZTrue)
  606.      NEXT
  607.      WasA1$ = ""
  608.      CALL SkipLine (1)
  609.      IF ZUserSecLevel >= ZOptSec(9) THEN _
  610. * ------[ first line different ]------
  611.         CALL QuickTPut1 ("Please Kill Your Old Private Messages.")   ' UG070501
  612. * REPLACING old line(s) by new
  613. 2001 IF (LowMsgNumber > 0 AND ActiveMessages >= MaxMsgs) _
  614.         OR HighMsgNumber >= 9999 THEN _
  615.         IF ZActiveMessageFile$ = ZMainMsgFile$ AND _
  616.            ActiveMessages = 1 THEN _
  617.            GOTO 5300 _
  618. * ------[ first line different ]------
  619.         ELSE ZOutTxt$ = "Sorry, the Message Base is Full.  Try Again Tomorrow." : _ ' UG070501
  620.              GOSUB 12979 : _                                         ' UG070501
  621.              GOTO 3650
  622. * REPLACING old line(s) by new
  623. 2007 IF ZSysopComment THEN _
  624.         ZWasZ$ = ZCmntsFile$ : _
  625. * ------[ first line different ]------
  626.         ZMsgHeader$ = "Comment" _                                    ' UG070501
  627.      ELSE ZWasZ$ = ZActiveMessageFile$ : _                           ' UG070501
  628.           ZMsgHeader$ = "Message"                                    ' UG070501
  629. * REPLACING old line(s) by new
  630. * ------[ first line different ]------
  631. 2008 IF ZSysopComment OR ZMsgsCanGrow THEN _                         ' UG070501
  632.         ZWasY$ = "On Disk" : _                                       ' UG070501
  633.         CALL FindFree : _
  634.         GOTO 2009
  635.      IF ZNextMsgRec + 5 + ZMaxNodes < HighestMsgRecord THEN _
  636.         GOTO 2010
  637.      ZWasY$ = "in File"                                              ' UG070501
  638.      ZFreeSpace$ = "1"
  639. * REPLACING old line(s) by new
  640. 2009 IF VAL(ZFreeSpace$) >= 2000 THEN _
  641.         GOTO 2010
  642. * ------[ first line different ]------
  643.      ZOutTxt$ = "Sorry, There's No Room " + ZWasY$ + " For Your " + ZMsgHeader$ + "." ' UG070501
  644.      GOSUB 12979
  645.      GOTO 3650
  646. * REPLACING old line(s) by new
  647. 2020 CALL SetWhoTo (-ZEnableCC*(ZUserSecLevel>=ZOptSec(5)),MsgTo$,MsgFrom$,RcvrRecNum,Found)
  648.      IF MsgTo$ = "" THEN _
  649. * ------[ first line different ]------
  650.         CALL SkipLine (1) : _                                        ' UG070501
  651.         RETURN
  652.      IF ZSysopComment OR ZSysopMsg THEN _
  653.         GOTO 2100
  654.      IF ZReply OR MsgFwd THEN _
  655.         Found = ZTrue : _
  656.         CALL Trim (MsgTo$):  _
  657.         GOTO 2035 _
  658.      ELSE Subject$ = ""
  659.      GOSUB 2065
  660. * REPLACING old line(s) by new
  661. * ------[ first line different ]------
  662. 2065 IF Subject$ <> "" THEN                                          ' UG070501
  663.         ZOutTxt$ = "Change Subject From " + Subject$ + " To What"    ' UG070501
  664.      ELSE                                                            ' UG070501
  665.         ZOutTxt$ = "Subject" + ZPressEnter$                          ' UG070501
  666.      END IF                                                          ' UG070501
  667.      ZMacroMin = 99
  668.      ZParseOff = ZTrue
  669.      GOSUB 12932
  670.      IF LEN(ZUserIn$) > 25 THEN _
  671.         ZOutTxt$ = "25 Chars Max." : _                               ' UG070501
  672.         GOSUB 12979 : _
  673.         GOTO 2065
  674.      IF ZWasQ = 0 THEN _
  675.         IF Subject$ <> "" THEN _
  676.            RETURN _
  677.         ELSE GOSUB 2435 : _
  678.              IF ZYes THEN _
  679.                 RETURN 5160 _
  680.              ELSE GOTO 2065
  681.      Subject$ = ZUserIn$
  682.      CALL AllCaps (Subject$)
  683.      OrigSubject$ = Subject$
  684.      RETURN
  685. '
  686. ' *****  ENTER MAIN BODY OF MESSAGE  ****
  687. '
  688. * REPLACING old line(s) by new
  689. * ------[ first line different ]------
  690. 2100 ZOutTxt$ = "Enter Your " + _
  691.           ZMsgHeader$ + "," + _
  692.           STR$(ZMaxMsgLines) + _
  693.           " Lines Max.  Press [ENTER] By Itself for Menu."           ' UG070501
  694.      GOSUB 12979                                                     ' UG070501
  695.      GOSUB 3200
  696. * REPLACING old line(s) by new
  697. 2127 IF ZRemoteEcho OR ZLocalUser THEN _
  698.         ZOutTxt$ = RIGHT$(STR$(ZLinesInMsg),2) + _
  699.              ": " + _
  700.              ZOutTxt$(ZLinesInMsg) _
  701.      ELSE ZOutTxt$ = ZOutTxt$(ZLinesInMsg)
  702.      GOSUB 12978
  703.      CALL LineEdit(ZLinesInMsg,ZRightMargin + 1)
  704.      IF ZWaitExpired THEN _
  705.         GOTO 2300 _
  706.      ELSE IF ZSubParm = -1 THEN _
  707.              GOTO 10595
  708.      CALL FindFKey
  709.      IF ZSubParm < 0 THEN _
  710.         GOTO 202
  711.      IF ZOutTxt$(ZLinesInMsg) = "" THEN _
  712.         ZLinesInMsg = ZLinesInMsg - 1 : _
  713. * ------[ first line different ]------
  714.         CALL SkipLine (1) : _                                        ' UG070501
  715.         GOTO 2300
  716. * REPLACING old line(s) by new
  717. 2140 WasJ = ZLinesInMsg
  718.      GOSUB 2200
  719.      IF WasX THEN _
  720. * ------[ first line different ]------
  721.         CALL SkipLine (1) : _                                        ' UG070501
  722.         GOTO 2300
  723.      GOTO 2125
  724. * REPLACING old line(s) by new
  725. 2200 WasX = 0
  726.      IF WasJ < (ZMaxMsgLines - 2) THEN _
  727.         RETURN
  728. * ------[ first line different ]------
  729.      ZOutTxt$ = "Warning: " + MID$("2 Lines LeftLast Line   Full",12 * (WasJ-(ZMaxMsgLines - 2)) + 1,12) + "." ' UG070501
  730.      WasX = (WasJ > (ZMaxMsgLines - 1))
  731. * REPLACING old line(s) by new
  732. * ------[ first line different ]------
  733. 2300 ' CALL SkipLine (1)                                             ' UG070501
  734.      IF ZExpertUser OR ZAnsIndex < ZLastIndex THEN _                 ' UG070501
  735.         GOTO 2315                                                    ' UG070501
  736. * REPLACING old line(s) by new
  737. * ------[ first line different ]------
  738. 2302 ZOutTxt$ = "A)bort, " + LEFT$("B)atch Import, ",-15 * (ZSysop OR ZLocalUser)) + _
  739.                 "C)ontinue Adding, D)elete Lines, E)dit a Line"      ' UG070501
  740.      CALL TopPrompt                                                  ' UG070501
  741.      ZOutTxt$ = "I)nsert Lines, L)ist, M)argin Change, R)evise Subj, S)ave Msg, ?)help" ' UG070501
  742.      CALL TopPrompt                                                  ' UG070501
  743. * REPLACING old line(s) by new
  744. * ------[ first line different ]------
  745. 2315 ZOutTxt$ = "Edit Function <A," + _                              ' UG070501
  746.           LEFT$("B,",-2 * (ZSysop OR ZLocalUser)) + _
  747.           "C,D,E,I,L,M,R,S,?>"
  748.      GOSUB 12930
  749.      IF ZWasQ = 0 THEN _
  750.         GOTO 2315
  751.      CALL AraAllCaps (ZUserIn$(),ZAnsIndex)
  752.      ZWasZ$ = ZUserIn$(ZAnsIndex)
  753. * REPLACING old line(s) by new
  754. * ------[ first line different ]------
  755. 2430 ZOutTxt$ = ZMsgHeader$ + " Aborted."                            ' UG070501
  756.      GOSUB 12979                                                     ' UG070501
  757.      GOTO 3650                                                       ' UG070501
  758. * REPLACING old line(s) by new
  759. * ------[ first line different ]------
  760. 2435 ZOutTxt$ = "Abort Your " + _                                    ' UG070501
  761.           ZMsgHeader$ + _
  762.           " (Y,[N])"
  763.      GOSUB 12930
  764.      RETURN
  765. '
  766. ' *****  CHANGE SUBJECT OF A MESSAGE  ****
  767. '
  768. * REPLACING old line(s) by new
  769. * ------[ first line different ]------
  770. 2500 ZOutTxt$ = "Delete From"                                        ' UG070501
  771.      GOSUB 3300
  772.      Mark1 = ZTestedIntValue
  773. * REPLACING old line(s) by new
  774. * ------[ first line different ]------
  775. 2520 Temp$ = "Through Line #"                                        ' UG070501
  776.      CALL ChangeInt (ZFalse,Temp$,0,Mark1,ZLinesInMsg)
  777.      IF ZWasQ = 0 THEN _
  778.         GOTO 2555                                                    ' UG070501
  779.      Mark2 = ZTestedIntValue                                         ' UG070501
  780. '    CALL SkipLine(1)                                                ' UG070501
  781.      GOTO 2530
  782. * REPLACING old line(s) by new
  783. 2522 FOR WasX = Mark1 TO Mark2
  784.         CALL AskMore ("",ZTrue,ZTrue,WasXX,ZFalse)
  785.         IF ZNo OR ZRet THEN _
  786.            WasX = Mark2 + 1 _
  787.         ELSE ZOutTxt$ = ZOutTxt$(WasX) : _
  788. * ------[ first line different ]------
  789.            GOSUB 12979                                               ' UG070501
  790.      NEXT
  791.      CALL SkipLine(1)
  792. * REPLACING old line(s) by new
  793. * ------[ first line different ]------
  794. 2530 ZOutTxt$ = "Delete Lines" + STR$(Mark1) + " thru " + _          ' UG070501
  795.         MID$(STR$(Mark2),2) + " (Y,[N],L)ist)"
  796.      GOSUB 12930
  797.      Temp$ = ZUserIn$(ZAnsIndex)
  798.      CALL AllCaps(Temp$)
  799.      IF Temp$ = "L" THEN _                                           ' UG070501
  800.         GOTO 2522                                                    ' UG070501
  801.      IF NOT ZYes THEN _                                              ' UG070501
  802.         ZOutTxt$ = "Lines Not Deleted." : _                          ' UG070501
  803.         GOSUB 12977 : _                                              ' UG070501
  804.         GOTO 2555
  805. * REPLACING old line(s) by new
  806. 2550 ZBlockSize = (Mark2 - Mark1) + 1
  807.      EndOfBuffer = ZLinesInMsg + 1
  808.      ZLinesInMsg = ZLinesInMsg - ZBlockSize
  809.      FOR WasX = Mark1 TO ZLinesInMsg
  810.         ZOutTxt$(WasX) = ZOutTxt$(WasX + ZBlockSize)
  811.      NEXT
  812.      FOR WasX = (ZLinesInMsg + 1) TO (EndOfBuffer)
  813.         ZOutTxt$(WasX) = ""
  814.      NEXT
  815. * ------[ first line different ]------
  816.      ZOutTxt$ = MID$(STR$(ZBlockSize), 2) + " Lines Deleted."        ' UG070501
  817.      GOSUB 12977                                                     ' UG070501
  818. * REPLACING old line(s) by new
  819. 2800 IF ZLinesInMsg >= ZMaxMsgLines AND NOT ZSysop THEN _
  820. * ------[ first line different ]------
  821.         ZOutTxt$ = "Message is Full." : _                            ' UG070501
  822.         GOSUB 12979 : _
  823.         GOTO 2300
  824. * REPLACING old line(s) by new
  825. 2830 WasLL = ZLinesInMsg
  826.      WasK = ZLinesInMsg - ZTestedIntValue
  827.      FOR WasX = ZTestedIntValue TO ZLinesInMsg
  828.         ZUserIn$(WasX + 1 - ZTestedIntValue) = ZOutTxt$(WasX)
  829.         ZOutTxt$(WasX) = ""
  830.      NEXT
  831.      ZLinesInMsg = ZTestedIntValue
  832. * ------[ first line different ]------
  833. '    CALL SkipLine (1)                                               ' UG070501
  834. * REPLACING old line(s) by new
  835. 2840 ZOutTxt$ = RIGHT$(STR$(ZLinesInMsg),2) + _
  836.           ": " + ZOutTxt$(ZLinesInMsg)
  837.      GOSUB 12978
  838.      CALL LineEdit(ZLinesInMsg,ZRightMargin + 1)
  839.      IF ZOutTxt$(ZLinesInMsg) = "" THEN _
  840. * ------[ first line different ]------
  841.         CALL SkipLine (1) : _                                        ' UG070501
  842.         GOTO 2920
  843. * REPLACING old line(s) by new
  844. 3010 ZStopInterrupts = ZFalse
  845. * ------[ first line different ]------
  846. '    CALL SkipLine (1)                                               ' UG070501
  847.      IF (ZWasQ = 1 OR MsgFwd) AND NOT ZGetExtDesc THEN _
  848.         WasL = 1 : _
  849.         ZOutTxt$ = ZFG3$ + "To: " + _
  850.              MsgTo$ + _
  851.              ZFG4$ + "  Subject: " + _                               ' UG070501
  852.              Subject$ + ZEmphasizeOff$ : _
  853.         GOSUB 12979 : _
  854.         CALL QuickTPut (MID$("    ",1,-4 * (NOT ZRemoteEcho)),0) : _
  855.         GOSUB 3200
  856. * REPLACING old line(s) by new
  857. 3020 IF ZGetExtDesc THEN WasL = 1
  858.      FOR WasX = WasL TO ZLinesInMsg
  859.         CALL AskMore ("",ZTrue,ZTrue,WasXX,ZFalse)
  860.         IF ZNo OR ZRet THEN _
  861.            WasX = ZLinesInMsg + 1 _
  862.         ELSE ZOutTxt$ = RIGHT$(STR$(WasX),2) + _
  863.                   ": " + _
  864.                   ZOutTxt$(WasX) : _
  865.              GOSUB 12979
  866.      NEXT
  867. * ------[ first line different ]------
  868.      CALL SkipLine (1)                                               ' UG070501
  869.      RETURN
  870. '
  871. ' *****  CHANGE MARGIN WIDTH   ****
  872. '
  873. * REPLACING old line(s) by new
  874. * ------[ first line different ]------
  875. 3100 CALL ChangeInt (ZTrue,"Right Margin",ZRightMargin,8,72)         ' UG070501
  876.      IF ZWasQ <> 0 THEN _
  877.         ZRightMargin = ZTestedIntValue
  878. * REPLACING old line(s) by new
  879. 3300 Temp$ = ZOutTxt$ + " Line #"
  880.      Temp = MsgLockLines + 1
  881. * ------[ first line different ]------
  882. '    CALL SkipLine (-(ZAnsIndex >= ZLastIndex))                      ' UG070501
  883.      CALL ChangeInt (ZFalse,Temp$,0,Temp,ZLinesInMsg)
  884.      IF ZSubParm = -1 THEN _
  885.         RETURN 10595
  886.      IF ZWasQ = 0 THEN _
  887.         IF Mark1 = 0 THEN _
  888.            RETURN 2300
  889.      RETURN
  890. '
  891. ' ****  SAVE MESSAGE   ***
  892. '
  893. * REPLACING old line(s) by new
  894. 3530 Temp = ZNextMsgRec
  895.      ZNextMsgRec = Temp + VAL(ZWasN$)
  896.      LSET ZMsgRec$ = MsgRecSave$
  897.      GOSUB 24000
  898.      GET 1,Temp
  899.      ZMsgPtr(ActiveMessages,1) = Temp
  900.      ZMsgPtr(ActiveMessages,2) = HighMsgNumber
  901.      LSET ZMsgRec$ = MsgNum$ + _
  902.                      MsgFrom$ + _
  903.                      MsgTo$ + _
  904.                      ZCurDate$ + _
  905.                      Subject$ + _
  906.                      MsgPswd$ + _
  907.                      ZActiveMessage$ + _
  908.                      ZWasN$ + _
  909.                      SPACE$(4 - LEN(ZWasN$)) + _
  910.                      MKI$(SecForMsg)
  911. ' ---[ write out list of people msg is to ]---
  912.      UserFileIndexSave = ZUserFileIndex
  913.      UserRecordHold$ = ZUserRecord$
  914.      CALL OpenWork (2,ZNodeWorkFile$)
  915.      WHILE NOT EOF(2)
  916.         CALL ReadParms (ZWorkAra$(),2,1)
  917.         MID$(ZMsgRec$,37,22) = LEFT$(ZWorkAra$(1)+ SPACE$(22),22)
  918.         RcvrRecNum = VAL(ZWorkAra$(2))
  919.         PUT 1,Temp
  920.         Temp = Temp + 1
  921.         NumRecs = NumRecs - 1
  922. ' ---[ notify receiver that has new mail waiting ]---
  923. * ------[ first line different ]------
  924.         CALL SetUserFlag (RcvrRecNum, 512, "Mail")                   ' UG070501
  925.      WEND
  926.      ZWasN$ = ""
  927.      ZOutTxt$ = "Saving Your Message as #" + _                       ' UG070501
  928.           STR$(HighMsgNumber)
  929.      IF NOT ZLocalUser THEN _
  930.         CALL UpdtCalr (ZOutTxt$,1)
  931.      GOSUB 12978
  932.      NumDots = 0
  933.      FOR WasJ = 1 TO ZLinesInMsg
  934.         CALL MarkTime (NumDots)
  935.         ZWasN$ = ZWasN$ + _
  936.              ZOutTxt$(WasJ)
  937.         IF LEN(ZWasN$) > 127 THEN _
  938.            LSET ZMsgRec$ = ZWasN$ : _
  939.            PUT 1 : _
  940.            ZWasN$ = MID$(ZWasN$,129)
  941. * REPLACING old line(s) by new
  942. * ------[ first line different ]------
  943. 3650 CALL SkipLine (1)                                               ' UG070501
  944.      QuotedReply = ZFalse                                            ' UG070501
  945.      MsgLockLines = 0
  946.      IF ZReply OR MsgFwd THEN _
  947.         ZReply = ZFalse : _
  948.         ZAnsIndex = SaveAnsIndex : _
  949.         GOTO 5344
  950.      IF ZGetExtDesc THEN _
  951.         ZLinesInMsg = 0
  952.      RETURN
  953. '
  954. ' ****  K - COMMAND FROM MAIN MENU (KILL MESSAGE)  ***
  955. '
  956. * REPLACING old line(s) by new
  957. 3900 ZKillMessage = ZFalse
  958. * ------[ first line different ]------
  959. '    CALL SkipLine (1)                                               ' UG070501
  960. * REPLACING old line(s) by new
  961. * ------[ first line different ]------
  962. 3930 ZOutTxt$ = "Kill Which Messages" + LEFT$(", M)arked",-9*(ZMarkedMsgs$ <> "")) + ZPressEnterExpert$ ' UG070501
  963.      GOSUB 12932
  964.      IF ZWasQ = 0 THEN _
  965.         RETURN
  966.      GOSUB 1893
  967.      ZWasZ$ = ZUserIn$(ZAnsIndex)                                    ' KGK020101
  968.      CALL UnMarkItems (ZMarkedMsgs$,ZAnsIndex,ZLastIndex,Found,ZTrue)
  969. * REPLACING old line(s) by new
  970. * ------[ first line different ]------
  971. 4040 IF ZAnsIndex >= ZLastIndex THEN _                               ' UG070501
  972.         CALL SkipLine (1)                                            ' UG070501
  973.      IF ZKillMessage THEN _                                          ' UG070501
  974.         RETURN
  975.      GOTO 3930
  976. '
  977. ' ****  Sysop Available toggle
  978. '
  979. * REPLACING old line(s) by new
  980. 4240 CALL Toggle(9)
  981. * ------[ first line different ]------
  982.      CALL SkipLine (1)                                               ' UG070501
  983.      RETURN
  984. '
  985. ' ****  T)opic - QUICK SCAN MESSAGES  ***
  986. '
  987. * REPLACING old line(s) by new
  988. * ------[ first line different ]------
  989. 4380 WasA1$ = "H)elp, S)ince, L)ast"                                 ' UG070501
  990.      NeedSkip = ZFalse                                               ' UG070501
  991.      IF ZGlobalRead THEN _                                           ' UG070501
  992.         CALL QuickTput1 ("Display Messages Globally in Linked Conferences.") : _ ' UG070501
  993.         NeedSkip = ZTrue _                                           ' UG070501
  994.      ELSE IF ZLinkedConf$ <> "" THEN _                               ' UG070501
  995.         WasA1$ = WasA1$ + ", G)lobal"                                ' UG070501
  996.      IF SearchString$ = "" THEN _                                    ' UG070501
  997.         WasA1$ = WasA1$ + ", Text to Look For" _                     ' UG070501
  998.      ELSE _                                                          ' UG070501
  999.         CALL QuickTPut1 ("Display Messages Containing '" + SearchString$ + "' Only.") : _ ' UG070501
  1000.         NeedSkip = ZTrue                                             ' UG070501
  1001.      IF AddressedToUser OR ToRequested OR FromRequested THEN _       ' UG070501
  1002.         ZWasY$ = LEFT$("To",-2*(ToRequested OR AddressedToUser)) + _ ' UG070501
  1003.              LEFT$(" or ",-AddressedToUser*4) + _                    ' UG070501
  1004.              LEFT$("From",-4*(FromRequested OR AddressedToUser)) : _ ' UG070501
  1005.         CALL QuickTPut1 ("Display Messages Only "+ZWasY$+" You.") : _' UG070501
  1006.         NeedSkip = ZTrue _                                           ' UG070501
  1007.      ELSE WasA1$ = WasA1$ + ", T)o, F)rom, M)" : _                   ' UG070501
  1008.           IF ReadMsgs AND ZMarkedMsgs$ <> "" THEN _
  1009.              WasA1$ = WasA1$ + "arked" _
  1010.           ELSE WasA1$ = WasA1$ + "ine"
  1011.      WasA1$ = WasA1$ + ", [Q]uit" + ZCrLf$ + _
  1012.            "Display Message Numbers (" + _
  1013.            MID$(STR$(LowMsgNumber),2) + "-" + _
  1014.            MID$(STR$(ZMsgPtr(ActiveMessages,2)),2) + ") or Command"  ' UG070501
  1015.      IF NeedSkip THEN _                                              ' UG070501
  1016.         CALL SkipLine (1)                                            ' UG070501
  1017. * REPLACING old line(s) by new
  1018. * ------[ first line different ]------
  1019. 4390 ZOutTxt$ = WasA1$                                               ' UG070501
  1020.      ZMacroMin = 99
  1021.      ZTurboKey = 0
  1022. * REPLACING old line(s) by new
  1023. 4418 ZWasA = INSTR("FfTt",ZUserIn$(ZAnsIndex))
  1024.      IF ZWasA > 0 THEN _
  1025.         ToRequested = (ZWasA > 2) : _
  1026.         FromRequested = (ZWasA < 3) : _
  1027.         GOTO 4370
  1028.      IF CurMsg = 0 THEN _
  1029.         IF SearchHeader$ <> "" THEN _
  1030.            GOTO 4370 _
  1031.         ELSE SearchString$ = ZUserIn$(ZAnsIndex) : _
  1032.              SearchCt = 0 : _
  1033.              CALL AllCaps (SearchString$) : _
  1034.              CALL Remove (SearchString$,CHR$(34) + CHR$(39)) : _
  1035.              SearchHeader$ = SearchString$ : _
  1036.              SubInHeader$ = SearchHeader$ : _
  1037.              GOTO 4370
  1038. * ------[ first line different ]------
  1039. '    CALL SkipLine (1)                                               ' UG070501
  1040. * REPLACING old line(s) by new
  1041. 4515 IF Forward THEN _
  1042. * ------[ first line different ]------
  1043.         ZOutTxt$ = "Sorry, No New Messages Found." : _               ' UG070501
  1044.         ZLastMsgRead = HighMsgNUmber : _
  1045.         ZMailWaiting = ZFalse _
  1046.      ELSE ZOutTxt$ = "Message #" + _
  1047.                STR$(CurMsg) + " Can't Be Found."                     ' UG070501
  1048.      IF SubInHeader$ = "" THEN _
  1049.         GOSUB 12979
  1050.      ZLastIndex = 0
  1051.      GOTO 4637
  1052. * REPLACING old line(s) by new
  1053. 4604   ZTurboKey = -ZTurboKeyUser
  1054.        CALL AskMore (WasA1$,ZTrue,ZFalse,WasXX,ZFalse)
  1055.        IF ZNo THEN _
  1056.           IF WasXX >= 32000 THEN _
  1057.              WasXX = 0 : _
  1058.              ZAnsIndex = ZLastIndex + 1 : _
  1059. * ------[ first line different ]------
  1060.              CALL SkipLine (1) : _                                   ' UG070501
  1061.              RETURN _
  1062.           ELSE GOTO 4637
  1063.        IF ZNonStop THEN _
  1064.           GOTO 4629
  1065.        CALL AraAllCaps(ZUserIn$(),1)
  1066.        ZReply = (ZReply OR ZUserIn$(1) ="R")
  1067. * REPLACING old line(s) by new
  1068. 4623   DontPrint = ZFalse
  1069.        CALL PutMsgAttr
  1070.        IF MsgFwd THEN GOTO 4624
  1071.        IF ZNoQuoting THEN GOTO 4627
  1072. * ------[ first line different ]------
  1073.        ZOutTxt$ = "Quote Original Message (Y,[N])"                   ' UG070501
  1074.        GOSUB 12999
  1075.        IF ZRet OR NOT ZYes THEN _
  1076.           GOTO 4627
  1077. * REPLACING old line(s) by new
  1078. 4624   QuotedReply = ZTrue
  1079.        ZLinesInMsg = ZLinesInMsg - 1
  1080.        IF HiLitedLine > 0 THEN _
  1081.           ZOutTxt$(HiLitedLine) = ZOutTxt$(0) : _
  1082.           HiLitedLine = 0
  1083.        IF MsgFwd THEN _
  1084.           TempRightMargin = ZRightMargin _
  1085.        ELSE _
  1086.           TempRightMargin = ZRightMargin - 2
  1087.        CALL WordWrap (TempRightMargin,ZLinesInMsg,ZOutTxt$())
  1088.        IF ZLinesInMsg > ZMsgDim THEN _
  1089.           ZLinesInMsg = ZMsgDim : _
  1090. * ------[ first line different ]------
  1091.           CALL QuickTPut1 ("Warning: Original Message Truncated to" + _
  1092.                       STR$(ZMsgDim) + " Lines.")                     ' UG070501
  1093.        IF MsgFwd THEN GOTO 4625
  1094.        FOR WasX = 1 TO ZLinesInMsg
  1095.           IF LEFT$(ZOutTxt$(WasX),1) = ">" THEN _
  1096.              ZOutTxt$(WasX) = ">" + ZOutTxt$(WasX) _
  1097.           ELSE ZOutTxt$(WasX) = "> " + ZOutTxt$(WasX)
  1098.        NEXT
  1099. * REPLACING old line(s) by new
  1100. 4625   WasX$ = MsgTo$
  1101.        GOSUB 2001
  1102.        IF (ActiveMessages >= MaxMsgs) OR MsgTo$ = "" THEN _
  1103.           GOTO 4628
  1104.        IF MsgFwd THEN _
  1105.           MsgFwd$ = ZActiveUserName$ : _
  1106.           CALL Trim (MsgFwd$) : _
  1107.           CALL Trim (WasX$) : _
  1108. * ------[ first line different ]------
  1109.           MsgFwd$ = "Original To: " + WasX$ + _
  1110.              "  Forwarded By: " + MsgFwd$                            ' UG070501
  1111.        IF (MsgFwd AND CanChangeSec AND NOT MsgFromCaller) THEN _
  1112.           CALL Trim (MsgFrom$) : _
  1113.           ZOutTxt$ = "Message Was From " + _
  1114.              MsgFrom$ + _
  1115.              ", Change to " + _                                      ' UG070501
  1116.              ZActiveUserName$ + _
  1117.              " (Y,[N])" : _
  1118.           GOSUB 12999 : _
  1119.           IF ZYes THEN _
  1120.              MsgFrom$ = ZActiveUserName$ : _
  1121.              CALL Trim (MsgFrom$) : _
  1122.              GOTO 4626
  1123.        IF MsgFwd AND NOT MsgFromCaller THEN _
  1124.           FOR MsgFwdCount = ZLinesInMsg TO 1 STEP -1 : _
  1125.              ZOutTxt$(MsgFwdCount + 2) = ZOutTxt$(MsgFwdCount) : _
  1126.           NEXT MsgFwdCount : _
  1127.           ZOutTxt$(1) = MsgFwd$ : _
  1128.           ZOutTxt$(2) = "" : _
  1129.           ZLinesInMsg = ZLinesInMsg + 2 : _
  1130.           IF NOT CanChangeSec THEN _
  1131.              MsgLockLines = 1
  1132. * REPLACING old line(s) by new
  1133. 4626   ZWasZ$ = "L"
  1134.        WasL = 1
  1135.        IF ZLinesInMsg >= ZMaxMsgLines THEN _
  1136. * ------[ first line different ]------
  1137.           CALL QuickTPut ("Warning: Message Must Be Shorter Than" + _
  1138.                       STR$(ZMaxMsgLines) + " Lines.",1)              ' UG070501
  1139.        IF NOT MsgFwd THEN _
  1140.           ZOutTxt$ = "Use C to Continue Reply.  Please Delete Unneeded Quoted Lines." : _ ' UG070501
  1141.           GOSUB 12975                                                ' UG070501
  1142.        GOSUB 3200
  1143.        GOSUB 3020
  1144.        GOSUB 2300
  1145.        GOTO 4628
  1146. * REPLACING old line(s) by new
  1147. * ------[ first line different ]------
  1148. 4630   CALL AskMore (",M)ark, #(s) to Read",ZTrue,ZTrue,WasXX,ZFalse)' UG070501
  1149.        IF ZWasQ = 0 OR ZYes THEN _
  1150.           GOTO 4631
  1151.        IF ZNo OR ZRet THEN _                                         ' UG070501
  1152.           CALL SkipLine (1) : _                                      ' UG070501
  1153.           RETURN
  1154.        IF ZSubParm = -1 THEN _
  1155.           RETURN 10595
  1156.        ZWasZ$ = ZUserIn$(1)
  1157.        CALL AllCaps (ZWasZ$)
  1158.        IF ZWasZ$ = "M" THEN _
  1159.           ZLastIndex = ZWasQ : _
  1160.           ZAnsIndex = 1 : _
  1161.           CALL AskItems ("M",ZWasZ$,ZTrue,"Message",ZMarkedMsgs$)    ' UG070501
  1162.        IF VAL(ZWasZ$) > 0 THEN _
  1163.           FOR WasI = ZWasQ TO 1 STEP -1 : _
  1164.              ZUserIn$(WasI + 1) = ZUserIn$(WasI) : _
  1165.           NEXT : _
  1166.           ZUserIn$(1) = MID$(ZAllOpts$,INSTR(ZOrigCommands$,"R"),1) : _
  1167.           ZLastIndex = ZWasQ + 1 : _
  1168.           ZAnsIndex = 1 : _
  1169.           RETURN 1235                                                ' KG062301
  1170. * REPLACING old line(s) by new
  1171. 4635 IF WasSO = 0 THEN _      ' end msg read loop top is 4552
  1172.         WasSO = 1
  1173.      IF SearchString$ <> "" THEN _
  1174.         SearchCt = SearchCt + 1 : _
  1175.         IF SearchCt > 99 THEN _
  1176.            SearchCt = 0 : _
  1177. * ------[ first line different ]------
  1178.            ZOutTxt$ = "Searched for " + SearchString$ + " Thru Message" + _
  1179.                       STR$(CurMsg) + ".  Continue ([Y],N)" : _       ' UG070501
  1180.            GOSUB 12932 : _
  1181.            IF ZNo THEN _
  1182.               RETURN
  1183.      ZMsgDimIndex = ZMsgDimIndex + WasSO
  1184.      GOTO 4552
  1185. * REPLACING old line(s) by new
  1186. 4650 CALL AskMore ("",ZTrue,ZTrue,WasX,ZTrue)
  1187. * ------[ first line different ]------
  1188.      CALL QuickTPut2 ("End of Messages.")                            ' UG070501
  1189.      RETURN
  1190. * REPLACING old line(s) by new
  1191. 4652 '****     mark current message         ****
  1192.      ZMarkedMsgs$ = ZMarkedMsgs$ + STR$(CurMsg) + ZCarriageReturn$
  1193. * ------[ first line different ]------
  1194.      CALL ReportMarked (ZMarkedMsgs$,"Message")                      ' UG070501
  1195.      GOTO 4604
  1196. * REPLACING old line(s) by new
  1197. 4665 CALL Trim (MsgFrom$)
  1198. * ------[ first line different ]------
  1199.      ZOutTxt$ = "Change Sender's Name from " + _                     ' UG070501
  1200.         MsgFrom$ + _
  1201.         " to"
  1202.      GOSUB 12995
  1203.      IF ZWasQ = 0 THEN _
  1204.         GOTO 4666
  1205.      IF LEN(ZUserIn$) > 30 THEN _
  1206.         CALL QuickTPut1 ("30 Chars Max.") : _                        ' UG070501
  1207.         GOTO 4665
  1208.      CALL AllCaps (ZUserIn$)
  1209.      MsgFrom$ = ZUserIn$
  1210. * REPLACING old line(s) by new
  1211. 4666 CALL Trim (MsgTo$)
  1212. * ------[ first line different ]------
  1213.      ZOutTxt$ = "Change Receiver's Name from " + _                   ' UG070501
  1214.         MsgTo$ + _
  1215.         " to"
  1216.      GOSUB 12995
  1217.      IF ZWasQ = 0 THEN _
  1218.         GOTO 4667
  1219.      IF LEN(ZUserIn$) > 30 THEN _
  1220.         CALL QuickTPut1 ("30 Chars Max.") : _                        ' UG070501
  1221.         GOTO 4666
  1222.      CALL AllCaps (ZUserIn$)
  1223.      MsgTo$ = ZUserIn$
  1224.      TempMsgTo$ = ZUserIn$
  1225.      CALL SetWhoTo (ZFalse,MsgTo$,MsgFrom$,RcvrRecNum,Found)
  1226.      IF MsgTo$ = "" THEN MsgTo$ = TempMsgTo$
  1227. * REPLACING old line(s) by new
  1228. 4667 CALL Trim (Subject$)
  1229. * ------[ first line different ]------
  1230.      ZOutTxt$ = "Change Subject from " + _                           ' UG070501
  1231.         Subject$ + _
  1232.         " to"
  1233.      GOSUB 12995
  1234.      IF ZWasQ = 0 THEN _
  1235.         GOTO 4668
  1236.      IF LEN(ZUserIn$) > 25 THEN _
  1237.         CALL QuickTPut1 ("25 Chars Max.") : _                        ' UG070501
  1238.         GOTO 4667
  1239.      CALL AllCaps (ZUserIn$)
  1240.      Subject$ = ZUserIn$
  1241. * REPLACING old line(s) by new
  1242. * ------[ first line different ]------
  1243. 4668 CALL ChangeInt (ZTrue,"Read Security",MsgSec,-32000,ZSysopSecLevel) ' UG070501
  1244.      IF ZWasQ <> 0 THEN _
  1245.         MsgSec = ZTestedIntValue
  1246. * REPLACING old line(s) by new
  1247. 4670 MsgTo$ = LEFT$(MsgTo$ + SPACE$(22),22)
  1248.      MsgFrom$ = LEFT$(MsgFrom$ + SPACE$(31),31)
  1249.      Subject$ = LEFT$(Subject$ + SPACE$(25),25)
  1250.      MsgPswd$ = LEFT$(MsgPswd$ + SPACE$(15),15)
  1251.      ZSubParm = 3
  1252.      CALL FileLock
  1253.      GET 1,CurHeader
  1254.      MID$(ZMsgRec$,37,22) = MsgTo$
  1255.      MID$(ZMsgRec$,6,31) = MsgFrom$
  1256.      MID$(ZMsgRec$,76,25) = Subject$
  1257.      MID$(ZMsgRec$,121,2) = MKI$(MsgSec)
  1258.      MID$(ZMsgRec$,101,15) = MsgPswd$
  1259.      IF LEFT$(MsgPswd$,6) = "^READ^" THEN _
  1260.         MID$(ZMsgRec$,1,1) = "*" _
  1261.      ELSE _
  1262.         MID$(ZMsgRec$,1,1) = " "
  1263.      PUT 1,CurHeader
  1264.      ZSubParm = 4
  1265.      CALL FileLock
  1266. * ------[ first line different ]------
  1267.      CALL QuickTPut ("Message Header Updated.",2)                    ' UG070501
  1268. '    CALL SkipLine (1)                                               ' UG070501
  1269.      RETURN
  1270. '
  1271. ' ****  O - COMMAND FROM MAIN MENU (OPERATOR PAGE)   ***
  1272. '
  1273. * REPLACING old line(s) by new
  1274. 4700 IF NOT ZSysopAvail THEN _
  1275.         ZOutTxt$ = "Sorry, " + _
  1276.              ZSysopFirstName$ + _
  1277. * ------[ first line different ]------
  1278.              " Isn't Available Now." : _                             ' UG070501
  1279.         GOSUB 12979 : _
  1280.         GOTO 4755
  1281. * REPLACING old line(s) by new
  1282. * ------[ first line different ]------
  1283. 4705 ' CALL QuickTPut1 ("Chat with SysOp.")                          ' UG070501
  1284.      WasJJ = VAL(MID$(TIME$,1,2))*100 + VAL(MID$(TIME$,4,2))
  1285.      IF (WasJJ > ZStartOfficeHours AND WasJJ < ZEndOfficeHours) OR ZSysopAnnoy THEN _
  1286.         GOTO 4710
  1287. * REPLACING old line(s) by new
  1288. * ------[ first line different ]------
  1289. 4708 ZOutTxt$ = "SysOp is in from" + _                               ' UG070501
  1290.           STR$(ZStartOfficeHours) + _
  1291.           " to" + _
  1292.           STR$(ZEndOfficeHours) + ","
  1293.      GOSUB 12979
  1294.      GOTO 4755
  1295. * REPLACING old line(s) by new
  1296. * ------[ first line different ]------
  1297. 4710 ZOutTxt$ = "Really Page the SysOp (Y,[N])"                      ' UG070501
  1298. '    CALL SkipLine (1)                                               ' UG070501
  1299.      GOSUB 12999
  1300.      IF NOT ZYes THEN _
  1301.         RETURN
  1302.      PageCount = 0
  1303.      ZOutTxt$ = "Paging SysOp"
  1304.      GOSUB 12978
  1305.      PageTimeStart! = TIMER
  1306.      TempSnoop = ZSnoop
  1307.      ZSnoop = ZTrue
  1308.      CALL Line25
  1309. * REPLACING old line(s) by new
  1310. * ------[ first line different ]------
  1311. 4750 GOSUB 4756                                                      ' UG070501
  1312.      CALL QuickTPut1 ("Apparently, " + ZOutTxt$ + " Isn't Around.")  ' UG070501
  1313. * REPLACING old line(s) by new
  1314. * ------[ first line different ]------
  1315. 4755 CALL QuickTPut2 ("Try a Message or Comment.")                   ' UG070501
  1316.      ZPageStatus$ = "PG!"
  1317.      CALL UpdtCalr ("Operator paged " + LEFT$(TIME$,5),2)
  1318.      RETURN
  1319. * INSERTING new line(s)
  1320. 4756 ZOutTxt$ = ZSysopFirstName$   ' Convert SysOp's name to mixed case ' UG070501
  1321.      GOTO 414                                                        ' UG070501
  1322. * REPLACING old line(s) by new
  1323. * ------[ first line different ]------
  1324. 4765 CALL UpdtCalr ("Paged & chatted with Sysop",1)                  ' UG070501
  1325.      ZOutTxt$ = ZSysopFirstName$ + " " + ZSysopLastName$             ' UG070501
  1326.      GOSUB 414                                                       ' UG070501
  1327.      ZOutTxt$ = "Hi! This is " + ZOutTxt$ + ", Go Ahead..."          ' UG070501
  1328.      GOSUB 12979                                                     ' UG070501
  1329.      ZPageStatus$ = ""
  1330. * REPLACING old line(s) by new
  1331. 4855 ZOutTxt$ = ZOutTxt$ + _
  1332. * ------[ first line different ]------
  1333.           "Active Msgs:" + _                                         ' UG070501
  1334.           STR$(ActiveMessages)
  1335.      ZOutTxt$ = ZOutTxt$ + _
  1336.           "  Next Msg #" + _                                         ' UG070501
  1337.           STR$(HighMsgNumber + 1)
  1338.      IF ZLastMsgRead > 0 THEN _
  1339.         ZOutTxt$ = ZOutTxt$ + _
  1340.              "  Last Msg Read:" + _
  1341.              STR$(ZLastMsgRead)                                      ' UG070501
  1342. * REPLACING old line(s) by new
  1343. * ------[ first line different ]------
  1344. 4857 GOSUB 12975
  1345.      IF (NOT ZSysop) AND (ZUserSecLevel < ZSecKillAny) THEN _        ' UG070501
  1346.         CALL SkipLine (1) : _                                        ' UG070501
  1347.         RETURN
  1348.      UserWork = (ZHighestUserRecord * .95) + 1
  1349.      IF ZMsgsCanGrow THEN _
  1350.         ZWasY$ = " Open" _                                           ' UG070501
  1351.      ELSE ZWasY$ = STR$(HighestMsgRecord + 1 - ZMaxNodes - ZNextMsgRec) ' UG070501
  1352.      ZOutTxt$ = "Users: Used" + _
  1353.           STR$(CurUserCount - 1) + _
  1354.           " Avl" + _
  1355.           STR$(UserWork - CurUserCount) + _
  1356.           "  Msgs: Used" + _
  1357.           STR$(ActiveMessages) + _
  1358.           " Avl" + _
  1359.           STR$(MaxMsgs - ActiveMessages) + _
  1360.           "  Msg Recs: Used" + _
  1361.           STR$(ZNextMsgRec - 1) + _
  1362.           " Avl" + ZWasY$                                            ' UG070501
  1363.      GOSUB 12977                                                     ' UG070501
  1364.      ZWasZ$ = ZUpldDriveFile$
  1365.      CALL FindFree
  1366.      CALL QuickTPut2 ("Upload Disk Has" + ZFreeSpace$)               ' UG070501
  1367.      RETURN
  1368. * REPLACING old line(s) by new
  1369. 4900 CALL UpdtCalr ("Entered " + ZConfName$,3)
  1370. * ------[ first line different ]------
  1371.      CALL QuickTPut ("Welcome to the " + ZConfName$,1)               ' UG070501
  1372. * REPLACING old line(s) by new
  1373. * ------[ first line different ]------
  1374. 4905 IF NOT TurboLogon THEN                                          ' UG070501
  1375.         CALL FindIt (ZFileName$)                                     ' UG070501
  1376.         IF ZOK THEN                                                  ' UG070501
  1377.            GOSUB 1789                                                ' UG070501
  1378.         ELSE                                                         ' UG070501
  1379.            CALL SkipLine (1)                                         ' UG070501
  1380.         END IF                                                       ' UG070501
  1381.      ELSE                                                            ' UG070501
  1382.         CALL SkipLine (1)                                            ' UG070501
  1383.      END IF                                                          ' UG070501
  1384. * REPLACING old line(s) by new
  1385. * ------[ first line different ]------
  1386. 5110 IF ZOrigUserFile$ <> ZActiveUserFile$ THEN _                    ' UG070501
  1387.         ZOutTxt$ = "Sorry, Personal Info Change is Unavailable.  Rejoin MAIN." : _ ' UG070501
  1388.         GOSUB 12977 : _                                              ' UG070501
  1389.         RETURN                                                       ' UG070501
  1390.      GOSUB 11185                                                     ' UG070501
  1391.      ZMacroMin = 99
  1392.      ZParseOff = ZTrue
  1393.      GOSUB 12960
  1394.      CALL NewPassword ("Enter a New Password",ZTrue)                 ' UG070501
  1395.      IF ZSubParm < 0 THEN _
  1396.         GOTO 202
  1397.      IF ZWasQ = 0 THEN _
  1398.         CALL SkipLine (1) : _                                        ' UG070501
  1399.         RETURN                                                       ' UG070501
  1400. * REPLACING old line(s) by new
  1401. * ------[ first line different ]------
  1402. 5120 ZOutTxt$ = "Reenter Your New Password"                          ' UG070501
  1403.      GOSUB 45010
  1404.      IF ZWasQ = 0 THEN _
  1405.         RETURN
  1406.      CALL AllCaps (ZUserIn$)
  1407.      IF ZWasZ$ <> ZUserIn$ THEN _
  1408.         ZOutTxt$ = "Passwords Don't Match." : _                      ' UG070501
  1409.         GOSUB 12977 : _                                              ' UG070501
  1410.         RETURN
  1411. * REPLACING old line(s) by new
  1412. 5125 IF ZMaxPswdChanges AND _
  1413.         ChangeThisSession > ZMaxPswdChanges AND _
  1414.         NOT ZSysop THEN _
  1415. * ------[ first line different ]------
  1416.             ZOutTxt$ = "Password Change Not Allowed Now." : _        ' UG070501
  1417.             GOSUB 12979 : _                                          ' UG070501
  1418.             RETURN _
  1419.      ELSE CALL SrchPasswrds (Found) : _
  1420.           IF NOT Found THEN _
  1421.              GOTO 5129 _
  1422.           ELSE ZOutTxt$ = "Password Temporarily Changed." : _
  1423.                GOSUB 12977 : _                                       ' UG070501
  1424.                ZPswd$ = ZTempPassword$ : _
  1425.                ZSecsPerSession! = ZTempTimeAllowed * 60 : _
  1426.                ZUserSecLevel = ZTempSecLevel : _
  1427.                GOSUB 41070 : _
  1428.                ZSysop = (ZUserSecLevel >= ZSysopSecLevel) : _
  1429.                CALL SetPrompt : _
  1430.                CALL XferType (2,ZTrue)
  1431.      IF ZActiveUserName$ = "SYSOP" THEN _
  1432.         ZUserIn$(1) = "********"
  1433. * REPLACING old line(s) by new
  1434. * ------[ first line different ]------
  1435. 5129 GOSUB 12989                                                     ' UG070501
  1436.      CALL OpenUser (ZHighestUserRecord)
  1437.      GOSUB 9450
  1438. * REPLACING old line(s) by new
  1439. 5130 IF ZUserFileIndex < 1 OR _
  1440.         ZUserFileIndex > 32767 THEN _
  1441.         GOTO 5160
  1442.      GET 5,ZUserFileIndex
  1443.      CALL AllCaps (ZUserIn$)
  1444.      LSET ZPswd$ = ZUserIn$
  1445.      GOSUB 9440
  1446.      GOSUB 12991
  1447. * ------[ first line different ]------
  1448.      ZOutTxt$ = "Password Changed."                                  ' UG070501
  1449.      ZStopInterrupts = ZTrue                                         ' UG070501
  1450.      GOSUB 12977                                                     ' UG070501
  1451.      IF ZMaxPswdChanges THEN _
  1452.         ChangeThisSession = ChangeThisSession + 1
  1453. * REPLACING old line(s) by new
  1454. 5290 CALL NextConf (ZTrue)
  1455.      IF ZHomeConf$ <> "" THEN _
  1456.         ConfMailJoin = ZTrue : _
  1457.         RETURN 1205
  1458.      IF ZLinkedConf$ = "" THEN _
  1459. * ------[ first line different ]------
  1460.         CALL QuickTPut2("Sorry, No Conference Found to Join.")       ' UG070501
  1461.      GOTO 5301
  1462. * REPLACING old line(s) by new
  1463. 5301 ZStackC = ZTrue
  1464. * ------[ first line different ]------
  1465.      CALL SubMenu ("L)ist, M)ain, N)ext Linked, with Mail S)ince or with P)ersonal Mail" + _ ' UG070501
  1466.          ZCrLf$ + "What Conference or Command ([ENTER] Quits)",_     ' UG070501
  1467.          WasA1$,MsgDrvPath$,"M.DEF",",M,MAIN,N,S,P,Q,", _
  1468.          ZTrue,ZFalse,ZFalse,"C.DEF",WasX,ZFalse)
  1469.      IF ZWasQ = 0 THEN _
  1470.         RETURN
  1471.      IF ZSubParm = -1 THEN _
  1472.         RETURN 10595
  1473. * REPLACING old line(s) by new
  1474. 5323 IF ZWasZ$ = "MAIN" THEN _
  1475.         ZWasZ$ = "M"
  1476.      WasX = (ZWasZ$ = "M")
  1477.      IF ZWasZ$ = ConfNameSave$ OR (WasX AND ZConfName$ = "MAIN") THEN _
  1478. * ------[ first line different ]------
  1479.         CALL QuickTPut2 ("You're Already in " + ZWasZ$ + ".") : _    ' UG070501
  1480.         RETURN
  1481.      ON INSTR("MNSPQ",ZWasZ$) GOTO 5350,5290,5292,5294,10550
  1482.      IF NOT ZOK THEN _
  1483.         GOTO 5300
  1484.      CLOSE 2
  1485. '
  1486. ' ****  UPDATE PREVIOUS MESSAGE BASE CHECKPOINT RECORD  ***
  1487. '
  1488. * REPLACING old line(s) by new
  1489. 5335 IF Found THEN _
  1490.         GOSUB 9500 : _
  1491.         ZMainUserFileIndex = -(ZSubBoard * ZUserFileIndex)_
  1492.                                -((NOT ZSubBoard) * ZMainUserFileIndex) : _
  1493.         Temp = -(ZSubBoard * ZMinLogonSec) _
  1494.                -((NOT ZSubBoard) * AutoAddSec) : _
  1495.         GOSUB 5135 : _
  1496.         GOSUB 5296 : _
  1497.         WasI = (ZUserSecLevel < OrigMainSec) : _
  1498.         WasJ = (ZUserSecLevel < Temp) : _
  1499.         WasK = (WasI AND WasJ) : _
  1500.         IF WasK THEN _
  1501. * ------[ first line different ]------
  1502.            ZOutTxt$ = "You're Locked Out of" : _                     ' UG070501
  1503.            GOTO 5341 _
  1504.         ELSE GOSUB 5375 : _
  1505.              GOTO 5345
  1506. '
  1507. ' **** USER NOT FOUND.  AUTO-ADD TO SUBBOARD IF SUFFICIENT SECURITY ***
  1508. '
  1509.      ZNewUser = ZTrue
  1510.      IF ZSubBoard THEN _
  1511.         AutoAddSec = ZMinLogonSec
  1512.      IF (ZOrigSec >= AutoAddSec) AND _
  1513.         (ZUserFileIndex > 0) AND (ZMainUserFileIndex > 0) THEN _
  1514.         LSET ZUserRecord$ = UserRecordHold$ : _
  1515.         CALL QuickTPut1 ("Adding Your Record to " + ZConfName$ + "...") : _ ' UG070501
  1516.         MID$(ZUserOption$,3,2) = MKI$(0) : _
  1517.         MID$(ZUserOption$,1,2) = MKI$(0) : _
  1518.         ZActiveUserName$ = LEFT$(UserRecordHold$,30) : _
  1519.         CALL Trim (ZActiveUserName$) : _
  1520.         Temp = -(ZSubBoard * ZDefaultSecLevel) _
  1521.                -((NOT ZSubBoard) * ZUserSecSave) : _
  1522.         CALL SetSysOp : _
  1523.         Temp = -(ZWasA * ZSysopSecLevel) - ((NOT ZWasA) * Temp) : _
  1524.         LSET ZSecLevel$ = MKI$(Temp) : _
  1525.         ZUserSecLevel = Temp : _
  1526.         GOSUB 5375 : _
  1527.         ZPageLength = ZPageLengthDef : _
  1528.         GOSUB 12986 : _
  1529.         GOSUB 12630 : _
  1530.         UpdateDate = ZTrue : _
  1531.         Found = ZTrue : _
  1532.         GOTO 5335
  1533.      IF ZOrigSec >= AutoAddSec THEN _
  1534.         CALL QuickTPut1 ("Temporarily Adding You to " + ZConfName$ + "...") : _ ' UG070501
  1535.         ZActiveUserFile$ = PrevUser$ : _
  1536.         UpdateDate = ZFalse : _
  1537.         ZUserFileIndex = PrevIndex : _
  1538.         GOSUB 5382 : _
  1539.         ZUserFileIndex = 0 : _
  1540.         GOTO 5345
  1541.      ZNewUser = ZFalse
  1542. * REPLACING old line(s) by new
  1543. 5340 IF ZInConfMenu THEN _
  1544. * ------[ first line different ]------
  1545.         ZOutTxt$ = "You Can't Join" _                                ' UG070501
  1546.      ELSE ZOutTxt$ = "Security Too Low for Conference"               ' UG070501
  1547. * REPLACING old line(s) by new
  1548. * ------[ first line different ]------
  1549. 5341 ZOutTxt$ = "Sorry, " + ZOutTxt$ + " " + ZConfName$ + "."        ' UG070501
  1550. '
  1551. ' ****  CANNOT JOIN THE REQUESTED CONFERENCE.  THEREFORE, GO BACK  ***
  1552. '
  1553.      GOSUB 1397
  1554.      ZConfName$ = PrevConfName$
  1555.      ConfFileName$ = ZConfName$
  1556.      IF ZSubBoard THEN _
  1557.         CALL ReadDef (PrevDef$)
  1558.      ZActiveMessageFile$ = PrevMsg$
  1559.      GOSUB 5343
  1560.      ZUserFileIndex = PrevIndex
  1561.      ZActiveUserFile$ = PrevUser$
  1562.      GOSUB 5382
  1563.      ZConfMode = ConfModeSave
  1564.      GOSUB 12987
  1565.      ZAnsIndex = 0
  1566.      ZLastIndex = 0
  1567.      GOTO 5301
  1568. '
  1569. ' ****  RESTORE A MESSAGE BASE   ***
  1570. '
  1571. * REPLACING old line(s) by new
  1572. * ------[ first line different ]------
  1573. 5350 ' IF ZConfName$ <> "MAIN" THEN _
  1574.      '    CALL QuickTPut ("Rejoining " + OrigMsgName$)               ' UG070501
  1575.      CALL DeLink (ZConfName$)
  1576.      ConfFileName$ = OrigMsgName$
  1577.      ZNewsFileName$ = OrigNewsFileName$
  1578.      TurboLogon = ZTrue
  1579.      ZMarkedMsgs$ = ""
  1580.      ZWasQ = 0
  1581.      ZNewUser = ZFalse
  1582.      ZInConfMenu = ZTrue
  1583.      IF ZActiveUserName$ = "SYSOP" THEN _
  1584.         ZActiveUserName$ = ZSecretName$ : _
  1585.         CALL Trim (ZActiveUserName$)
  1586.      ZConfigFileName$ = ZOrigCnfg$
  1587.      CALL ReadDef (ZConfigFileName$)
  1588.      IF ZOrigMsgFile$ <> ZActiveMessageFile$ THEN _
  1589.         ZActiveMessageFile$ = ZOrigMsgFile$ : _
  1590.         GOSUB 5343
  1591.      IF ZOrigUserFile$ <> ZActiveUserFile$ THEN _
  1592.         GOSUB 5380 : _
  1593.         ZActiveUserFile$ = ZOrigUserFile$ : _
  1594.         ZActiveUserName$ = ZOrigUserName$ : _
  1595.         GOSUB 12598 : _
  1596.         GOSUB 12990 : _
  1597.         IF Found THEN _
  1598.            GOSUB 9500 : _
  1599.            ZMainUserFileIndex = ZUserFileIndex : _
  1600.            CALL SetPrompt : _
  1601.            CALL XferType (2,ZTrue) _
  1602.         ELSE ZUserFileIndex = 0 : _
  1603.              ZMainUserFileIndex = 0
  1604.      CALL UpdtCalr ("Exited " + ZConfName$,3)
  1605.      ZConfName$ = "MAIN"
  1606.      ConfNameSave$ = ZConfName$
  1607.      GOSUB 2350
  1608.      ZUplds = ZGlobalUplds
  1609.      ZDnlds = ZGlobalDnlds
  1610.      ZDLToday! = ZGlobalDLToday!
  1611.      ZBytesToday! = ZGlobalBytesToday!
  1612.      ZDLBytes! = ZGlobalDLBytes!
  1613.      ZULBytes! = ZGlobalULBytes!
  1614.      ZBankTime = ZGlobalBankTime
  1615. * REPLACING old line(s) by new
  1616. * ------[ first line different ]------
  1617. 5400 ' CALL SkipLine(2)                                              ' UG070501
  1618.      CALL QuickTPut1 ("Your User Profile:")                          ' UG070501
  1619. * REPLACING old line(s) by new
  1620. 5410 CALL Toggle(-9)
  1621.      GOSUB 43020
  1622.      ZFF = INSTR(ZDefaultXfer$,ZUserXferDefault$)
  1623.      CALL Toggle(-5)
  1624.      GOSUB 42810
  1625.      CALL Toggle(-3)
  1626.      CALL Toggle(-6)
  1627.      CALL Toggle(-7)
  1628.      CALL Toggle(-10)
  1629.      CALL Toggle(-2)
  1630.      CALL Toggle(-4)
  1631.      CALL Toggle(-8)
  1632.      CALL Toggle(-1)
  1633.      IF ZRestrictByDate AND ZDaysInRegPeriod > 0 THEN _
  1634.         IF ZUserSecLevel > ZTempExpiredSec THEN _
  1635. * ------[ first line different ]------
  1636.            CALL QuickTPut1 ("Registration Expires " + ZExpirationDate$) ' UG070501
  1637.      CALL SkipLine (1)                                               ' UG070501
  1638.      RETURN
  1639. '
  1640. ' *****  B - COMMAND FROM UTILITY MENU (Bank Time)  ****
  1641. '
  1642. * REPLACING old line(s) by new
  1643. 8050 MsgFrom$ = MID$(ZMsgRec$,6,31)
  1644.      CALL Trim (MsgFrom$)
  1645.      IF LEN(MsgFrom$) < 23 THEN _
  1646.         MsgFrom$ = MsgFrom$ + _
  1647.                         SPACE$(23 - LEN(MsgFrom$))
  1648.      IF ZUserSecLevel >= ZSecChangeMsg THEN _
  1649.         Year$ = "  Security:" + _
  1650.               STR$(MsgSec) _
  1651.         ELSE Year$ = ""
  1652.      IF MID$(ZMsgRec$,101,1) = "!" THEN _
  1653.         MID$(ZMsgRec$,1,1) = "!"
  1654.      ZOutTxt$ = ZFG1$ + "Msg #: " + _
  1655.           LEFT$(ZMsgRec$,5) + _
  1656.           Year$ + SPACE$ (22-LEN(Year$)) + ZConfName$
  1657.      Year$ = ZFG4$ + "   Sent: " + _
  1658.           MID$(ZMsgRec$,68,8) + _
  1659.           " " + _
  1660.           MID$(ZMsgRec$,59,5)
  1661.      IF NOT ZRet THEN _
  1662.         IF ReadMsgs THEN _
  1663.            CALL QuickTPut1 (ZOutTxt$): _
  1664.            WasX$ = MsgFrom$ : _
  1665.            CALL CheckColor (WasX$,SubInHeader$,ZFG2$) : _
  1666.            CALL QuickTPut1 (ZFG2$ + " From:  " + WasX$ + Year$) : _
  1667.            GOSUB 8076 : _
  1668.            WasX$ = MsgTo$ : _
  1669.            CALL CheckColor (WasX$,SubInHeader$,ZFG3$) : _
  1670.            CALL QuickTPut1 (ZFG3$ + "   To:  " + WasX$ + "  " + ZFG2$ + Year$) : _
  1671.            CALL CheckColor (Subject$,SubInHeader$,ZFG4$) : _
  1672. * ------[ first line different ]------
  1673.            ZOutTxt$ = ZFG4$ + " Subj:  " + _                         ' UG070501
  1674.                 Subject$ + ZEmphasizeOff$ _
  1675.         ELSE ZOutTxt$ = ZFG1$ + LEFT$(ZMsgRec$,5) + _
  1676.                   " " + _
  1677.                   MID$(ZMsgRec$,68,5) + _
  1678.                   " " + _
  1679.                   + ZFG2$ + LEFT$(MsgFrom$,18) + _
  1680.                   " -> " + _
  1681.                   + ZFG3$ + LEFT$(MsgTo$,19) + _
  1682.                   " " + _
  1683.                   + ZFG4$ + LEFT$(Subject$,24) + ZEmphasizeOff$ : _
  1684.              CALL CheckColor (ZOutTxt$,SubInHeader$,"") : _
  1685.              GOTO 8080
  1686.      IF QuickScanMsgs OR _
  1687.         ScanMsgs THEN _
  1688.            GOTO 8080 _
  1689.      ELSE GOTO 8077
  1690. * REPLACING old line(s) by new
  1691. 8076 IF MID$(ZMsgRec$,123,6) = STRING$(6,0) OR _
  1692.         MID$(ZMsgRec$,123,6) = SPACE$(6) THEN _
  1693. * ------[ first line different ]------
  1694.            Year$ = " Rcvd: -No-" : _                                 ' UG070501
  1695.            RETURN
  1696.      Year$ = " Rcvd: " + _
  1697.            RIGHT$(STR$(ASC(MID$(ZMsgRec$,123,1))),2) + _
  1698.            "-" + _
  1699.            RIGHT$(STR$(ASC(MID$(ZMsgRec$,124,1))),2) + _
  1700.            "-" + _
  1701.            RIGHT$(STR$(ASC(MID$(ZMsgRec$,125,1))),2) + _
  1702.            " " + _
  1703.            RIGHT$(STR$(ASC(MID$(ZMsgRec$,126,1))),2) + _
  1704.            ":" + _
  1705.            RIGHT$(STR$(ASC(MID$(ZMsgRec$,127,1))),2)
  1706.      FOR WasI = 8 TO 15
  1707.         IF MID$(Year$,WasI,1) = " " THEN _
  1708.            MID$(Year$,WasI,1) = "0"
  1709.      NEXT
  1710.      FOR WasI = 17 TO 21
  1711.         IF MID$(Year$,WasI,1) = " " THEN _
  1712.            MID$(Year$,WasI,1) = "0"
  1713.      NEXT
  1714.      RETURN
  1715. * REPLACING old line(s) by new
  1716. 9085    IF LEFT$(ZOutTxt$,1) = ZStartOfHeader$ OR _
  1717.            LEFT$(ZOutTxt$,LEN(ZScreenOutMsg$)) = ZScreenOutMsg$ THEN _
  1718.            GOTO 9050
  1719.         ZOutTxt$(ZLinesInMsg) = ZOutTxt$
  1720.         IF Bracketed THEN _
  1721.            Bracketed = ZFalse : _
  1722.            HiLitedLine = ZLinesInMsg
  1723.         ZLinesInMsg = ZLinesInMsg + 1
  1724.         IF ZLinesInMsg > MsgDimXtra THEN _
  1725.            ZLinesInMsg = ZLinesInMsg - 1 : _
  1726.            CALL SkipLine (1) : _
  1727. * ------[ first line different ]------
  1728.            CALL QuickTPut1 ("Message Too Long.  Truncated to" + STR$(MsgDimXtra) + " Lines.") : _ ' UG070501
  1729.            ZOutTxt$ = "" : _
  1730.            RETURN
  1731.         IF NOT DontPrint THEN _
  1732.            GOSUB 12979 : _
  1733.            IF ZRet THEN _
  1734.               ZOutTxt$ = "" : _
  1735.               RETURN _
  1736.            ELSE CALL AskMore ("",ZTrue,ZTrue,ZAnsIndex,ZFalse) : _
  1737.                 IF ZNo THEN _
  1738.                    DontPrint = ZTrue
  1739.         GOTO 9050
  1740. * REPLACING old line(s) by new
  1741. 9100 CALL RptTime
  1742. * ------[ first line different ]------
  1743.      CALL SkipLine (1)                                               ' UG070501
  1744.      RETURN
  1745. '
  1746. ' * WRITE A RECORD TO THE RBBS-PC "USER" FILE
  1747. '
  1748. * REPLACING old line(s) by new
  1749. 9700 ReturnToPrompt = (ZAnsIndex < ZLastIndex)                       ' UG070501
  1750. * REPLACING old line(s) by new
  1751. * ------[ first line different ]------
  1752. 9701 ReturnOn$ = ",*,S,N,"                                           ' UG070501
  1753.      WasA1$ = ZBulletinMenu$                                         ' UG070501
  1754. * INSERTING new line(s)
  1755. 9702 CALL SubMenu ("What Bulletins, L)ist, S)ince, N)ews" + ZPressEnterExpert$,_ ' UG070501
  1756.                    WasA1$, ZBulletinPrefix$,"",ReturnOn$,_
  1757.                    ZFalse,ZFalse,ZFalse,"",WasX,ZTrue)
  1758.      IF ZWasQ = 0 THEN _
  1759.         RETURN
  1760.      CALL CheckCarrier
  1761.      IF ZSubParm = -1 THEN _
  1762.         RETURN 10595
  1763.      IF (ZWasZ$ = "*" OR ZWasZ$ = "S") THEN _
  1764.         ZPrevPrefix$ = "" : _
  1765.         GOTO 9760
  1766.      ZStopInterrupts = ZFalse
  1767.      IF ZWasZ$ = "N" THEN _
  1768.         GOSUB 1242 : _
  1769.         IF WasZ <> 0 THEN _
  1770.            CALL QuickTPut2 ("Sorry, No News is Available.") : _      ' UG070501
  1771.            GOTO 9704 _                                               ' UG070501
  1772.         ELSE GOTO 9703
  1773.      CALL BufFile (ZFileName$,ZAnsIndex)
  1774. * REPLACING old line(s) by new
  1775. 9703 CALL UpdtCalr ("Read bulletin " + ZFileName$,1)
  1776. * INSERTING new line(s)
  1777. 9704 IF ReturnToPrompt AND ZAnsIndex >= ZLastIndex THEN _            ' UG070501
  1778.         RETURN                                                       ' UG070501
  1779.      ReturnToPrompt = ZFalse                                         ' UG070501
  1780.      GOTO 9702                                                       ' UG070501
  1781. '
  1782. ' *  CHECK AND REVIEW NEW BULLETINS SINCE Last LOGON
  1783. '
  1784. * REPLACING old line(s) by new
  1785. 9760 ' ****  [entry when want review plus chance to read] *********
  1786.      GOSUB 9750
  1787. * ------[ first line different ]------
  1788.      IF NumNewBullets = 0 THEN _                                     ' UG070501
  1789.         CALL SkipLine (1) _                                          ' UG070501
  1790.      ELSE _                                                          ' UG070501
  1791.         ZLastIndex = NumNewBullets + 1 : _                           ' UG070501
  1792.         ZOutTxt$ = "Read the New Bulletins ([Y],N)" : _              ' UG070501
  1793.         GOSUB 12999 : _
  1794.         IF NOT ZNo THEN _
  1795.            FOR Temp = 1 TO NumNewBullets : _
  1796.               ZUserIn$(Temp) = ZOutTxt$(Temp+1) : _
  1797.            NEXT : _
  1798.            ZAnsIndex = 0 : _
  1799.            ZLastIndex = NumNewBullets : _
  1800.            GOTO 9701                                                 ' UG070501
  1801.      ZLastIndex = 0
  1802.      IF ZAnsIndex < 1 THEN _
  1803.         RETURN
  1804.      GOTO 9702                                                       ' UG070501
  1805. '
  1806. ' *  W - COMMAND FROM MAIN MENU (WHO'S ON THE OTHER NODES)
  1807. '
  1808. * REPLACING old line(s) by new
  1809. 10070 CALL Muzak (7)
  1810.       ZFileName$ = ZCmntsFile$
  1811.       IF NOT ZStopInterrupts THEN _
  1812. * ------[ first line different ]------
  1813.          ZOutTxt$ = "* Ctrl-K(^K) or ^X Aborts, ^S Pauses (^Q Resumes) *" : _ ' UG070501
  1814.          GOSUB 12976
  1815.       GOSUB 20150
  1816.       RETURN
  1817. '
  1818. ' *  U - COMMAND FROM UTILITY MENU (DISPLAY USERS)
  1819. ' *  2 - COMMAND FROM SYSOP MENU (DISPLAY USERS)
  1820. '
  1821. * REPLACING old line(s) by new
  1822. 10090 CALL Muzak (6)
  1823. * ------[ first line different ]------
  1824.       ZOutTxt$ = "List: U)sers, R)ecent Callers"                     ' UG070501
  1825.       ZMacroMin = 2                                                  ' UG070501
  1826. '     CALL SkipLine (1)                                              ' UG070501
  1827.       GOSUB 12930
  1828.       IF ZWasQ = 0 THEN _
  1829.          RETURN
  1830.       CALL AraAllCaps (ZUserIn$(),ZAnsIndex)
  1831.       ON INSTR("UR",ZUserIn$(ZAnsIndex)) + 1 GOTO 10090,10096,10093
  1832. * REPLACING old line(s) by new
  1833. 10099 ZOutTxt$ = ""
  1834. * ------[ first line different ]------
  1835.       CALL SkipLine (1)                                              ' UG070501
  1836.       LSET ZUserRecord$ = UserRecordHold$
  1837.       ZStopInterrupts = ZTrue
  1838.       RETURN
  1839. '
  1840. ' *  3 - COMMAND FROM SYSOP MENU (RECOVER MESSAGES)
  1841. '
  1842. * REPLACING old line(s) by new
  1843. * ------[ first line different ]------
  1844. 10391 CALL ChangeInt (ZFalse,"Recover Which Message",0,1,9999)       ' UG070501
  1845.       IF ZWasQ = 0 THEN _
  1846.          RETURN
  1847.       MsgToRecover = ZTestedIntValue
  1848.       GOSUB 5344
  1849.       ActionFlag = ZFalse
  1850.       CALL RecoverMsg (MsgToRecover,FirstMsgRecord,ActionFlag)
  1851.       MsgRecovered = MsgRecovered OR ActionFlag
  1852.       GOTO 10391
  1853. * REPLACING old line(s) by new
  1854. * ------[ first line different ]------
  1855. 10530 ZOutTxt$ = "Delete the Comments File (Y,[N])"                  ' UG070501
  1856.       GOSUB 12995
  1857.       IF ZYes THEN _
  1858.          CALL OpenOutW (ZCmntsFile$)
  1859.       CLOSE 2
  1860. * REPLACING old line(s) by new
  1861. 10553 CALL UpdtCalr ("Time limit exceeded",1)
  1862. * ------[ first line different ]------
  1863.       CALL QuickTPut1 ("Time Limit Exceeded.")                       ' UG070501
  1864. '
  1865. ' *  Q - COMMAND FROM GLOBAL FUNCTIONS
  1866. '
  1867. * REPLACING old line(s) by new
  1868. 10570 IF MinsRemaining > 1 AND (ZTurboKeyUser OR NOT ZExpertUser) THEN _
  1869. * ------[ first line different ]------
  1870.          ZOutTxt$ = "Really Log Off (Y,[N])" : _                     ' UG070501
  1871.          GOSUB 12930 : _
  1872.          IF NOT ZYes THEN _
  1873.             RETURN
  1874.       GetOut = ZTrue
  1875. '     CALL SkipLine (1)                                              ' UG070501
  1876.       GOTO 10560
  1877. * REPLACING old line(s) by new
  1878. 10595 CALL GetTime
  1879.       GOSUB 13700
  1880.       ZSubParm = 0
  1881.       CALL Carrier
  1882.       IF ZSubParm = -1 THEN _
  1883.          GOTO 10597
  1884.       IF ZConfName$ = OrigMsgName$ THEN _
  1885.          GetOut = ZTrue
  1886.       IF (ZSubBoard AND (NOT GetOut) AND (NOT ZSleepDisconnect)) THEN _
  1887.          GOSUB 5380 : _
  1888.          ZHomeConf$ = "M" : _
  1889. * ------[ first line different ]------
  1890.          CALL QuickTPut1 ("Time Limit Exceeded in " + ZConfName$ + ".") : _ ' UG070501
  1891.          ZSubBoard = ZFalse : _
  1892.          GOTO 1205
  1893. * REPLACING old line(s) by new
  1894. 10698 CALL Muzak (5)
  1895.       IF ZFunctionKey = 22 THEN _
  1896.          GOTO 13545
  1897. * ------[ first line different ]------
  1898.       ZOutTxt$ = "System Access Denied!"                             ' UG070501
  1899.       GOSUB 12976
  1900.       CALL DelayTime (8 + ZBPS)
  1901.       GOTO 13545
  1902. '
  1903. ' *  M - COMMAND FROM UTILITY MENU (CHANGE MARGINS)
  1904. '
  1905. * REPLACING old line(s) by new
  1906. 10930 IF (ZRequiredRings = 0 AND NOT ZNoDoorProtect) THEN _
  1907. * ------[ first line different ]------
  1908.          CALL QuickTPut2 ("Sorry, Remote DOS Isn't Available.") : _  ' UG070501
  1909.          RETURN
  1910. * REPLACING old line(s) by new
  1911. 10932 IF ZLocalUser AND NOT ZDebug THEN _
  1912. * ------[ first line different ]------
  1913.          CALL QuickTPut2 ("Sorry, Only for Remote SysOps.") : _      ' UG070501
  1914.          RETURN
  1915.       CALL DosExit
  1916.       ZSubParm = -9
  1917.       CALL FindFKey
  1918.       GOTO 202
  1919. '
  1920. ' *  D - COMMAND FROM MAIN MENU (EXIT TO DOORS)
  1921. '
  1922. * REPLACING old line(s) by new
  1923. 10970 IF NOT ZDoorsAvail OR _
  1924.          (ZRequiredRings = 0 AND NOT ZNoDoorProtect) THEN _
  1925. * ------[ first line different ]------
  1926.          CALL QuickTPut2 ("Sorry, No Doors are Available.") : _      ' UG070501
  1927.          RETURN
  1928.       IF ZTimeLock AND 1 AND NOT ZHasDoored THEN _
  1929.          CALL TimeLock : _
  1930.          IF NOT ZOK THEN _
  1931.             RETURN
  1932. * REPLACING old line(s) by new
  1933. 10974 WasA1$ = ZMenu$(5)
  1934.       CALL Talk (5,ZOutTxt$)
  1935.       ZStackC = ZTrue
  1936. * ------[ first line different ]------
  1937.       CALL SubMenu ("Open Which Door, L)ist" + ZPressEnterExpert$, _ ' UG070501
  1938.                     WasA1$,"",".BAT","",_
  1939.                     ZTrue,ZFalse,ZFalse,"",InMenu,ZFalse)
  1940.       IF ZWasQ = 0 THEN _
  1941.          RETURN
  1942.       IF ZSubParm = -1 THEN _
  1943.          RETURN 10595
  1944. * REPLACING old line(s) by new
  1945. * ------[ first line different ]------
  1946. 11127   ZOutTxt$ = "What Record #"                                   ' UG070501
  1947.         GOSUB 12932
  1948.         GOTO 11125
  1949. '
  1950. ' *  D - COMMAND FROM 5- USER MAINTENANCE OPTIONS (DELETE USER)
  1951. '
  1952. * REPLACING old line(s) by new
  1953. * ------[ first line different ]------
  1954. 11130   ZOutTxt$ = "Really Delete this User (Y,[N])"                 ' UG070501
  1955.         GOSUB 12995
  1956.         IF ZYes THEN _
  1957.            LSET ZUserName$ = CHR$(0) + _
  1958.                              "deleted user" : _
  1959.            LSET ZSecLevel$ = MKI$(ZMinLogonSec - 1) : _
  1960.            LSET ZLastDateTimeOn$ = "01-01-80" + _
  1961.                                      " " + _
  1962.                                      ZTimeLoggedOn$
  1963.         GOTO 11290
  1964. '
  1965. ' *  N - COMMAND FROM 5- USER MAINTENANCE OPTIONS (CHANGE USER PASSWORD)
  1966. '
  1967. * REPLACING old line(s) by new
  1968. * ------[ first line different ]------
  1969. 11185   CALL QuickTPut1 ("Your "+ ZUserLocation$ + " is Now Set to " + ZWasCI$ + ".") ' UG070501
  1970.         WasA1$ = "Enter a New "                                      ' UG070501
  1971.         RETURN
  1972. * REPLACING old line(s) by new
  1973. * ------[ first line different ]------
  1974. 11340 ZOutTxt$ = "Find What " + ZPromptHash$                         ' UG070501
  1975. '     CALL SkipLine (1)                                              ' UG070501
  1976.       ZParseOff = ZTrue
  1977.       GOSUB 12932
  1978.       IF ZWasQ = 0 THEN _
  1979.          GOTO 11340
  1980.       TempHashValue$ = ZUserIn$
  1981. * REPLACING old line(s) by new
  1982. * ------[ first line different ]------
  1983. 11342 ZOutTxt$ = "Find What " + ZPromptIndiv$                        ' UG070501
  1984.       GOSUB 12995
  1985.       IF ZWasQ = 0 THEN _
  1986.          GOTO 11342
  1987.       TempIndivValue$ = ZUserIn$
  1988.       IF LEN(TempIndivValue$) > ZLenIndiv THEN _
  1989.          GOTO 11342
  1990.       CALL AllCaps (TempIndivValue$)
  1991. * REPLACING old line(s) by new
  1992. 11380 ZOutTxt$ = TempHashValue$ + _
  1993.            " " + _
  1994.            TempIndivValue$ + _
  1995. * ------[ first line different ]------
  1996.            " Not Found."                                             ' UG070501
  1997.       GOSUB 12977
  1998.       GOTO 11310
  1999. '
  2000. ' *  S - COMMAND FROM 5- USER MAINTENANCE OPTIONS (CHANGE USER SECURITY)
  2001. '
  2002. * REPLACING old line(s) by new
  2003. * ------[ first line different ]------
  2004. 11395 ZOutTxt$ = "Enter a New Sec Level" + ZPressEnter$              ' UG070501
  2005.       GOSUB 12932
  2006.       ZWasZ$ = ZUserIn$(ZAnsIndex)
  2007.       WasOF = VAL(ZWasZ$)
  2008.       IF WasOF > ZUserSecLevel THEN _
  2009.          WasOF = ZUserSecLevel
  2010.       RETURN
  2011. '
  2012. ' *  R - COMMAND FROM 5- USER MAINTENANCE OPTIONS (RESET USER GRAPHICS)
  2013. '
  2014. * REPLACING old line(s) by new
  2015. * ------[ first line different ]------
  2016. 11450 ZOutTxt$ = "Enter New Registration Date (MM-DD-YY)"            ' UG070501
  2017.       GOSUB 12932
  2018.       IF ZWasQ = 0 THEN _
  2019.          GOTO 11015
  2020. * REPLACING old line(s) by new
  2021. 12300 WasA1$ = ""
  2022.       Attempts = 0
  2023.       FirstNameSave$ = ZFirstName$
  2024.       LastNameSave$ = ZLastName$
  2025.       ActiveUserNameSave$ = ZActiveUserName$
  2026.       CityStateSave$ = ZWasCI$
  2027.       HashValueSave$ = HashValue$
  2028.       IndivValueSave$ = ZIndivValue$
  2029.       GOSUB 12500
  2030.       GOSUB 12840
  2031.       GOSUB 12850
  2032.       GOSUB 12598
  2033.       IF ZUserFileIndex = 0 THEN _
  2034.          GOSUB 12984 : _
  2035.          GOTO 12330
  2036.       IF Found THEN _
  2037. * ------[ first line different ]------
  2038.          WasD$ = "User Already Exists." : _                          ' UG070501
  2039.          GOSUB 1315 : _
  2040.          GOSUB 12984 : _
  2041.          GOTO 12330
  2042. * REPLACING old line(s) by new
  2043. * ------[ first line different ]------
  2044. 12555 GOSUB 12933                                                    ' UG070501
  2045.       IF ZWasQ = 0 THEN _
  2046.          RETURN 12500
  2047. * REPLACING old line(s) by new
  2048. * ------[ first line different ]------
  2049. 12558 ZOutTxt$ = "Did You Spell Your Name Correctly ([Y],N)"         ' UG070501
  2050.       GOSUB 12995
  2051.       RETURN
  2052. * REPLACING old line(s) by new
  2053. * ------[ first line different ]------
  2054. 12595 CALL QuickTPut1 ("Invalid Name.  Call Logged and Recorded!")   ' UG070501
  2055.       CALL UpdtCalr ("Name violation: "+ZActiveUserName$,1)
  2056.       GOTO 10621
  2057. '
  2058. ' *  COMMON SEARCH USER FILE ROUTINE
  2059. '
  2060. * REPLACING old line(s) by new
  2061. 12600 GOSUB 4910
  2062.       GOSUB 12988
  2063.       IF ZInConfMenu THEN _
  2064.          IF NOT ZPrivateDoor THEN _
  2065. * ------[ first line different ]------
  2066.             CALL QuickTPut1 ("Checking " + ConfFileName$ + " Users...") ' UG070501
  2067. * REPLACING old line(s) by new
  2068. 12605 CALL OpenUser (ZHighestUserRecord)
  2069.       GOSUB 9450
  2070.       CALL FindUser (TempHashValue$,TempIndivValue$,ZStartHash,ZLenHash,_
  2071.                      ZStartIndiv,ZLenIndiv,ZHighestUserRecord,Found,_
  2072.                      ZUserFileIndex,ZWasSL)
  2073.      IF Found THEN _
  2074.         RETURN
  2075.      IF CurUserCount < (ZHighestUserRecord-1)*.95 THEN _
  2076.         RETURN
  2077. * ------[ first line different ]------
  2078.      ZOutTxt$ = "Sorry, No New User Room Left in " + ZConfName$ + "." ' UG070501
  2079.      CALL UpdtCalr ("No room for new users in " + ZConfName$,2)      ' UG070501
  2080.      IF ZActiveUserFile$ <> ZMainUserFile$ THEN _
  2081.         ZUserFileIndex = 0 : _
  2082.         RETURN
  2083.       IF ZRememberNewUsers AND NOT ZSurviveNoUserRoom THEN _
  2084.          GOSUB 1397
  2085.       ZUserFileIndex = 0
  2086.       IF ZSurviveNoUserRoom THEN _
  2087.          ZRememberNewUsers = ZFalse
  2088.       RETURN
  2089. '
  2090. ' *  AUGMENT USER COUNT, LOCK 4 REC BLOCK IN USER, UNLOCK FILES
  2091. '
  2092. * REPLACING old line(s) by new
  2093. * ------[ first line different ]------
  2094. 12800 CALL NewPassword ("Enter a Password to Use Here",ZFalse)       ' UG070501
  2095.       IF ZSubParm < 0 THEN _
  2096.          GOTO 202
  2097.       IF UserSecLevelSave < ZSysopSecLevel THEN _
  2098.          IF ZUserIn$ = SPACE$(LEN(ZUserIn$)) THEN _
  2099.             GOTO 12800
  2100.       LSET ZPswd$ = ZWasZ$
  2101.       RETURN
  2102. '
  2103. ' *  GET HASH VALUE FOR CURRENT USER TO LOOK UP IN THE USER'S FILE
  2104. '
  2105. * REPLACING old line(s) by new
  2106. * ------[ first line different ]------
  2107. 12932 CALL UglyPopCmdStack                                           ' UG070501
  2108.       GOTO 12997                                                     ' UG070501
  2109. * INSERTING new line(s)
  2110. 12933 CALL PopCmdStack                                               ' UG070501
  2111.       GOTO 12997
  2112. '
  2113. ' *  GET CITY AND STATE
  2114. '
  2115. * REPLACING old line(s) by new
  2116. 12960 ZOutTxt$ = WasA1$ + _
  2117.                  ZUserLocation$
  2118.       IF NOT ZNewUser THEN _
  2119.          ZOutTxt$ = ZOutTxt$ + ZPressEnter$
  2120.       ZParseOff = ZTrue
  2121.       GOSUB 12932
  2122.       IF ZWasQ = 0 OR ZUserIn$ = SPACE$(LEN(ZUserIn$)) THEN _
  2123.          IF ZNewUser THEN _
  2124.             GOTO 12960 _
  2125.          ELSE RETURN
  2126.       CALL AllCaps (ZUserIn$)
  2127. * ------[ first line different ]------
  2128.       IF NOT ZNewUser THEN _                                         ' UG070501
  2129.          CALL QuickTPut2 ("Set to "+ZUserIn$)                        ' UG070501
  2130.       LSET ZCityState$ = ZUserIn$
  2131.       ZWasCI$ = ZUserIn$
  2132.       RETURN
  2133. '
  2134. ' *  S - COMMAND FROM 5 - USER MAINTENANCE OPTIONS (SCAN USERS)
  2135. '
  2136. * REPLACING old line(s) by new
  2137. 12962 WasX = 0
  2138.       ZFF = ZFalse
  2139.       ZMacroMin = 99
  2140. * ------[ first line different ]------
  2141.       ZOutTxt$ = "String to Search"                                  ' UG070501
  2142.       GOSUB 12998
  2143.       IF ZWasQ = 0 THEN _
  2144.          GOTO 11001
  2145.       CALL AllCaps (ZUserIn$)
  2146.       WasWK$ = ZUserIn$
  2147.       IF ScanFunction$ = "L" THEN _
  2148.          WasWK$ = "," + _
  2149.                STR$(VAL(WasWK$)) + _
  2150.                ","
  2151. * REPLACING old line(s) by new
  2152. * ------[ first line different ]------
  2153. 12975 ZSubParm = 1     ' skip, print, cr/lf                          ' UG070501
  2154.       GOTO 12981                                                     ' UG070501
  2155. * REPLACING old line(s) by new
  2156. * ------[ first line different ]------
  2157. 12976 ZSubParm = 2     ' skip, print, cr/lf, cr/lf                   ' UG070501
  2158.       GOTO 12981                                                     ' UG070501
  2159. * REPLACING old line(s) by new
  2160. * ------[ first line different ]------
  2161. 12977 ZSubParm = 3     ' print, cr/lf, cr/lf                         ' UG070501
  2162.       GOTO 12981                                                     ' UG070501
  2163. * REPLACING old line(s) by new
  2164. * ------[ first line different ]------
  2165. 12978 ZSubParm = 4     ' print, no cr/lf                             ' UG070501
  2166.       GOTO 12981                                                     ' UG070501
  2167. * REPLACING old line(s) by new
  2168. * ------[ first line different ]------
  2169. 12979 ZSubParm = 5     ' print, cr/lf                                ' UG070501
  2170.       GOTO 12981
  2171. * REPLACING old line(s) by new
  2172. 12996 CALL UglyTGet                                                  ' UG070501
  2173. * REPLACING old line(s) by new
  2174. 23100 GET 1,ZNextMsgRec
  2175.       IF MID$(ZMsgRec$,61,1) = ":" THEN _
  2176.          CALL CheckInt (MID$(ZMsgRec$,117,4)) : _
  2177.          IF ZErrCode = 0 AND (ZTestedIntValue > 1) AND (ZTestedIntValue < 100) THEN _
  2178.             WasY = ZTestedIntValue : _
  2179.             CALL CheckInt (MID$(ZMsgRec$,2,4)) : _
  2180.             IF ZErrCode = 0 AND ZTestedIntValue > HighMsgNumber THEN _
  2181.                HighMsgNumber = ZTestedIntValue : _
  2182.                ZNextMsgRec = ZNextMsgRec + WasY : _
  2183. * ------[ first line different ]------
  2184.                CALL QuickTPut1 ("Fixing Invalid Message Header.") : _ ' UG070501
  2185.                MsgCorrected = ZTrue : _
  2186.                GOTO 23100
  2187.       RETURN
  2188. '
  2189. ' *  UPDATE MESSAGE HEADER RECORD DATA
  2190. '
  2191. * REPLACING old line(s) by new
  2192. 30200 IF ZTimeLock AND 2 AND NOT ZHasPrivDoor THEN _
  2193.          CALL TimeLock : _
  2194.          IF NOT ZOK THEN _
  2195.             RETURN
  2196.       IF ZLibDiskChar$ = "0000" THEN _
  2197. * ------[ first line different ]------
  2198.          CALL QuickTPut1 ("You Have to Select a Library Disk First.") : _ ' UG070501
  2199.          RETURN
  2200.       ZSubParm = 3
  2201.       CALL Library
  2202.       GOTO 20160
  2203. '
  2204. ' * CALCULATE TIME REMAINING FOR USER
  2205. '
  2206. * REPLACING old line(s) by new
  2207. * ------[ first line different ]------
  2208. 41070 ZOutTxt$ = "Your Access Level is" + _                          ' UG070501
  2209.            STR$(ZUserSecLevel) + _
  2210.            MID$(" (SYSOP)",1,-8 * (ZUserSecLevel >= ZSysopSecLevel))
  2211.       GOSUB 12975
  2212.       RETURN
  2213. '
  2214. ' * NULLS SET FOR NEW USERS
  2215. '
  2216. * REPLACING old line(s) by new
  2217. * ------[ first line different ]------
  2218. 42700 ' CALL SkipLine (1)                                            ' UG070501
  2219.       ZOutTxt$ = "TurboKeys Allow Single Key Commands Without ENTER." + _ ' UG070501
  2220.          ZCrLf$ + "Use TurboKeys (Y,[N])"                            ' UG070501
  2221.       GOSUB 12999
  2222.       ZTurboKeyUser = NOT ZYes
  2223.       CALL Toggle (8)
  2224.       RETURN
  2225. '
  2226. ' *  F - COMMAND FROM UTILITY MENU (FILE Transfer DEFALUT MODE)
  2227. ' *  FILE Transfer DEFAULT SET FOR NEW USERS
  2228. '
  2229. * REPLACING old line(s) by new
  2230. 42800 ZFF = INSTR(ZDefaultXfer$,ZUserXferDefault$)
  2231.       IF ZFF = 0 THEN _
  2232.          ZFF = INSTR(ZInternalEquiv$,"N")
  2233. * ------[ first line different ]------
  2234.       CALL QuickTPut2 ("Current Protocol: "+MID$(ZDefaultXfer$,ZFF,1)) ' UG070501
  2235. * REPLACING old line(s) by new
  2236. 42805 ZOutTxt$ = "Default "
  2237.       CALL XferType (3,ZExpertUser)
  2238.       IF ZSubParm = -1 THEN _
  2239.          RETURN 10595
  2240.       ZUserXferDefault$ = ZWasFT$
  2241. * ------[ first line different ]------
  2242.       GOSUB 42810                                                    ' UG070501
  2243.       CALL SkipLine (1)                                              ' UG070501
  2244.       RETURN                                                         ' UG070501
  2245. * REPLACING old line(s) by new
  2246. * ------[ first line different ]------
  2247. 42851 ZOutTxt$ = "Change to R)BBS, C)aller's Software" + _
  2248.            MID$(", I)ntermediate Host",1,-20 * (ZHostEchoOn$ <> "")) + _ ' UG070501
  2249.            ZPressEnterExpert$
  2250.       GOSUB 12930
  2251.       IF ZWasQ = 0 THEN _
  2252.          RETURN
  2253. * REPLACING old line(s) by new
  2254. * ------[ first line different ]------
  2255. 43020 ZOutTxt$ = "Menu Graphics: " + _                               ' UG070501
  2256.            MID$("None AsciiColor",ZWasGR * 5 + 1,5)
  2257.       GOSUB 12979
  2258.       RETURN
  2259. * REPLACING old line(s) by new
  2260. 43022 ZPrevPUI$ = ""
  2261.       IF ZEmphasizeOnDef$ = "" THEN _
  2262.          RETURN
  2263. * ------[ first line different ]------
  2264.       ZOutTxt$ = "Display Prompts in Color ([Y],N)"                  ' UG070501
  2265.       GOSUB 12930
  2266.       ZHiLiteOff = NOT ZNo
  2267.       CALL Toggle(5)
  2268.       CALL SkipLine (1)                                              ' UG070501
  2269.       RETURN
  2270.